DEBUG:Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_LJCModifyTrackingViewController", referenced from: objc-class-ref in DJMembersViewController.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

遇到問題如圖:這是在使用 Cornerstone 的時候同事在一個我不編譯的文件里面寫了幾個 Controller, 然后我做 update 的時候,重新編譯遇到的問題

F5BA25A3-F4D3-4626-AAEA-D2B434CEFF2B.png

p.p1 {margin: 0.0px 0.0px 0.0px 12.0px; text-indent: -12.0px; font: 11.0px Menlo}p.p2 {margin: 0.0px 0.0px 0.0px 12.0px; text-indent: -12.0px; font: 11.0px Menlo; min-height: 13.0px}

"OBJC_CLASS$_LJCModifyTrackingViewController", referenced from:
p.p1 {margin: 0.0px 0.0px 0.0px 12.0px; text-indent: -12.0px; font: 11.0px Menlo}p.p2 {margin: 0.0px 0.0px 0.0px 12.0px; text-indent: -12.0px; font: 11.0px Menlo; min-height: 13.0px}

  objc-class-ref in DJMembersViewController.o

ld: symbol(s) not found for architecture x86_64

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

查閱了資料后發現原來是這個文件沒交給 target 編譯

解決辦法:1.笨辦法:~/Library/Developer/Xcode/DerivedData 關掉xcode,刪掉DerivedData這個文件夾里的全部東西 然后重新打開項目clean>build

2.找到這個文件LJCModifyTrackingViewController在 Xcode 工程里面選中,看右邊的編譯欄的書頁界面有一個 Target Membership 的選項 把里面你的項目名字那個文件前面框選中,再次 Clean 之后編譯就行了

屏幕快照 2016-11-29 上午9.54.57.png
屏幕快照 2016-11-29 上午9.55.23.png

遇到問題2:在同事上傳了代碼后,我這邊下拉之后的內容不能再 Xcode 的編譯文件里面看到,但是用 finder 能找到該文件,報錯同樣是這樣的 x86_64問題,解決方法:在每個文件夾那里用 show finder 方法把該文件路徑下的文件找到,拉到程序中,這樣等于是給 Xcode 說明這個文件的路徑是在這里(這種錯誤的原因就是你的文件存在,但是編譯文件里面沒有該文件的路徑信息)

最后補充一下看到的資料:
architecture x86_64 類似問題可能產生的原因
1.新建類,未參加 Target 編譯(與我的問題一模一樣)

2.檢查 targets --> build phases --> Compile Sources 中是否缺少 .m 文件

3.檢查 targets --> build phases --> link binary with libraries 是否缺少依賴庫

4.有些三方庫可能需要導入libz.dylib

5.檢查庫文件導入的路徑不對或不存在,targets --> building setting --> search paths路徑

6.檢查三方庫是否重復導入

6.-fno-objc-arc 的問題,檢查下文件編譯環境

bug的解決要具體情況具體分析,隨機應變。
(如有錯誤,歡迎各位指正! ^ ^ )

Xcode5老版本解決方案鏈接:http://www.lxweimin.com/p/05f84034e4f6

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

推薦閱讀更多精彩內容