2011-08-18 27 views
7

Tôi có một lỗi dưới đây:của Apple Mach-O Linker (id) Lỗi

ld /Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Products/Debug-iphonesimulator/uniText.app/uniText normal i386 
    cd "/Volumes/Data/Documents/XCode Projects/Trans SMS" 
    setenv MACOSX_DEPLOYMENT_TARGET 10.6 
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/llvm-gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk -L/Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Products/Debug-iphonesimulator -F/Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Products/Debug-iphonesimulator -filelist /Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Intermediates/uniText.build/Debug-iphonesimulator/uniText.build/Objects-normal/i386/uniText.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -framework SystemConfiguration -framework MessageUI -framework AddressBook -framework AddressBookUI -framework CoreTelephony -lsqlite3.0 -framework UIKit -framework Foundation -framework CoreGraphics -o /Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Products/Debug-iphonesimulator/uniText.app/uniText 

ld: duplicate symbol _OBJC_IVAR_$_FMDatabase.databasePath in /Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Intermediates/uniText.build/Debug-iphonesimulator/uniText.build/Objects-normal/i386/FMDatabase-566DC6D59187887D.o and /Volumes/Data/Library/Developer/Xcode/DerivedData/uniText-cgynaitlevdrajfeoaldwldehaft/Build/Intermediates/uniText.build/Debug-iphonesimulator/uniText.build/Objects-normal/i386/FMDatabase-566DC6D59187887D.o for architecture i386 
collect2: ld returned 1 exit status 
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/llvm-gcc-4.2 failed with exit code 1 

Có thể ai đó giúp tôi không? Nó được sử dụng để hoạt động bình thường trước đây. Tôi không biết mình đã thay đổi gì trong các nguồn dự án. Nhưng tôi chắc chắn rằng tôi không bao giờ thay đổi bất cứ điều gì trong đó FMDatabase.h và .m.

Trả lời

4

Phần liên quan của lỗi của bạn là ld: duplicate symbol _OBJC_IVAR_$_FMDatabase.databasePath. Vì một số lý do, trình liên kết (ld) đang cố gắng liên kết FMDatabase hai lần. Kiểm tra xem bạn có nhiều bản sao của nó trong dự án của bạn hay không.

+0

Tôi nghĩ câu trả lời của bạn rất hợp lý. Nhưng nếu tôi kiểm tra dự án, tôi chỉ có một bản sao của các tệp .h và .m đó. Đó là FMDatabase.h và FMDatabase.m. Tôi nên tìm kiếm gì nữa? –

+0

Điều này cũng giúp tôi giải quyết vấn đề - cảm ơn. Đơn giản chỉ cần có một tham chiếu kép cho một tập tin. –

+1

ý của bạn là gì? Cứu giúp!!! làm thế nào để kiểm tra xem tôi có tham chiếu đôi cho một tập tin? – OMGPOP

1

Kiểm tra xem bạn có nhập khung công tác bắt buộc không.

4

Tôi đã từng gặp lỗi này khi tôi đang khởi tạo giá trị cho các hằng số được xác định trong phạm vi toàn cục trong tệp .h của tôi.

Giải quyết sự cố, bằng cách khai báo chúng trong tiêu đề và khởi tạo chúng trong tệp .m.

+1

wow người đàn ông. đây là câu trả lời tôi đang tìm kiếm !!! – OMGPOP

+0

Một lý do khác để sử dụng macro! –

3

Đây là một bài đăng khá cũ, nhưng có lẽ nó vẫn giúp ai đó.

Chỉ có cùng một vấn đề, đối với tôi giải pháp là: Tôi vô tình liên kết tệp .m ở một trong các tiêu đề thay vì tệp .h. Chỉ cần thay đổi để liên kết đúng tệp .h.

0

Tôi giải quyết vấn đề bằng cách cập nhật khung của tôi.

0

Tôi đã giải quyết bằng cách thực hiện xóa.

Sau đó có thể Tạo.

Các vấn đề liên quan