如圖, 在pod集成一個(gè)第三方Framework后編譯報(bào)錯(cuò)
首先看報(bào)錯(cuò):
Undefined symbols for architecture arm64:
說(shuō)在arm64架構(gòu)下有未定義的符號(hào). (可能是引用問(wèn)題導(dǎo)致, 這里有很多情況都會(huì)報(bào)這個(gè)錯(cuò)誤, 我下面只列出我遇到的一種)
再看細(xì)節(jié):
"OBJC_CLASS$_FCFileManager", referenced from:
objc-class-ref in MMMyXieYiXiangQingViewController.o
大概意思就是在MMMyXieYiXiangQingViewController.o這個(gè)類(lèi)里的FCFileManager未找到.
我們?nèi)MMyXieYiXiangQingViewController這里看看, 搜索FCFileManager
看來(lái)這個(gè)類(lèi)引用有問(wèn)題了, 我們右鍵jump to Definition進(jìn)入文件看看. 發(fā)現(xiàn)FCFileManager.h這個(gè)文件是另一個(gè)Framework ZTBaseKit里的.
然后我們回到pod里的
ZTPlaceOrderFramework的Build phases里看看, 果然沒(méi)有ZTBaseKit的引入.
于是我們點(diǎn)擊+號(hào)添加 , 編譯通過(guò)了!
這里很奇怪, 我的同事電腦里是沒(méi)有單獨(dú)引用ZTBaseKit的, 也可以編譯通過(guò), 因?yàn)閆TPlaceOrderFramework 這里引入了ZTDocumentLibrary, 而ZTDocumentLibrary里是引入了ZTBaseKit的, 所以按理說(shuō), 不用再次引入, 應(yīng)該也能編譯通過(guò)的. 但不知道為何我電腦這邊就報(bào)錯(cuò)了.
特此 記錄一下!!!!!
搞了快一天了 ??, 查錯(cuò)邏輯摘自下面文章, 多謝作者的思路引導(dǎo)了我.
http://www.reibang.com/p/a9ae45c9c045