iOS開發過程中,Xcode無端端報錯:error: linker command failed with exit code 1 (use -v to see invocation)

出現錯誤的情形


像這樣的一大堆,總體說編譯鏈接時錯誤

/Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Products/Debug-iphonesimulator/ClothingOrders.app/ClothingOrders normal i386

cd /Users/JasonSu/Desktop/SVN

setenv IPHONEOS_DEPLOYMENT_TARGET 10.1

setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10.1.sdk -L/Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Products/Debug-iphonesimulator -L/Users/JasonSu/Desktop/SVN/ZBarSDK -F/Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Products/Debug-iphonesimulator -filelist /Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Intermediates/ClothingOrders.build/Debug-iphonesimulator/ClothingOrders.build/Objects-normal/i386/ClothingOrders.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=6.1 -lz -framework MobileCoreServices -framework SystemConfiguration -framework CFNetwork -framework CoreData -liconv -framework QuartzCore -framework CoreVideo -framework CoreMedia -framework AVFoundation -framework UIKit -framework Foundation -framework CoreGraphics -lzbar -o /Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Products/Debug-iphonesimulator/ClothingOrders.app/ClothingOrders

duplicate symbol _OBJC_METACLASS_$_EntityOrdersTotal in:

/Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Intermediates/ClothingOrders.build/Debug-iphonesimulator/ClothingOrders.build/Objects-normal/i386/EntityOrdersTotal-1502FC93349A1D59.o

duplicate symbol _OBJC_CLASS_$_EntityOrdersTotal in:

/Users/JasonSu/Library/Developer/Xcode/DerivedData/ClothingOrders-bcmqkcjsfgyibbgetgiyczzqcerj/Build/Intermediates/ClothingOrders.build/Debug-iphonesimulator/ClothingOrders.build/Objects-normal/i386/EntityOrdersTotal-1502FC93349A1D59.o

ld: 2 duplicate symbols for architecture i386

clang: error: linker command failed with exit code 1 (use -v to see invocation)


原因

iOS開發這個錯誤一定少不了,現總結如下,一般是這幾個的問題,如果不是哪你真可麻煩了

1.引用頭文件出錯,把***.h弄成了.m,檢查一下你的所有引用;

2.再就是你引用第三方的庫,你添加文件是系統沒有所第三方庫的.m文件參入的編譯中去,你向項目添加文件得注意了,沒有的要自己添加上;

3.就是不小心添加的重復的類,向Entity之類,具體你可以看這里http://stackoverflow.com/questions/2264455/iphone-duplicate-symbol-error,順便說一下http://stackoverflow.com/這個網站是iOS開發不可少的一個網站;

4.有些frameworks沒有添加進來也會出現上面的問題;

5.這個可能原因而已,比較坑爹,就是你建的類類名極為相似,Xcode識別錯誤,刪掉相似的類重新建或者重命名吧;

6.當第三方文件丟失時,再次拷貝到工程中,有可能造成 .m文件的重復引用,也會出現這類錯誤。

7.引用了別的類沒有在頭文件.h聲明的方法或變量,比如引用了沒有帶關鍵字extern 的靜態變量。

如果發現還有更多的錯誤原因,歡迎留言~

原文參考:查看參考文

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容