linker command failed with exit code 1 (use -v to see invocation)這個(gè)錯(cuò)誤貌似遇見(jiàn)并不止一次,當(dāng)我想用某個(gè)第三方類庫(kù)的時(shí)候(如SBJson),我直接把類庫(kù)文件copy到工程目錄里面,然后一編譯就出現(xiàn)這樣錯(cuò)誤(并不是一定會(huì)出這樣錯(cuò)誤),開(kāi)始以為是網(wǎng)上下載的類庫(kù)本身問(wèn)題,所以重新找類庫(kù)或者其他方式將它添加進(jìn)去,只要不出錯(cuò)就行,也一直沒(méi)有深入了解根本問(wèn)題,今天在給工程添加一個(gè)FMDB(SQLIte第三方類庫(kù))文件編譯時(shí)又出現(xiàn)這種錯(cuò)誤,一開(kāi)始以為工程問(wèn)題,但是新建工程后還是出現(xiàn)這個(gè)問(wèn)題,經(jīng)過(guò)網(wǎng)上查找,得到了解決辦法;
[cpp] view plaincopy
在網(wǎng)上得到解決辦法是: 在工作左邊導(dǎo)航欄Target-->Build Phases-->compile Sources中,第三庫(kù)庫(kù)的所有.m文件都添加到里面,然后編譯通過(guò)了;
添加.m文件
根據(jù)對(duì)比可以看見(jiàn) in FMDBTest,FMDBTest的Target里添加進(jìn)去了了一些.m文件
對(duì)于以上錯(cuò)誤,根據(jù)網(wǎng)友解答我的理解是 我們?cè)谑褂眠@些第三方類庫(kù)文件時(shí)直接將其拖拽到工程之中,編譯的的時(shí)候Xcode也沒(méi)有自動(dòng)引用,所以造成這樣錯(cuò)誤,這就需要我們手動(dòng)添加。假如我們?cè)诠こ讨行陆硞€(gè)文件就不會(huì)出現(xiàn)這樣問(wèn)題;
參考 http://blog./2012/ios-dev-undefined-symbols-for-architecture-i386/
|
|