IOS .a加載 386與ARM架構問題

今天用XCODE編一個簡單的LIB,編譯OK,在另一個項目中加載.a文件總是出現所加載的.a文件被忽略。提示如下:

ld: warning: ignoring file /Users/Bing/Library/Developer/Xcode/DerivedData/SkyIOSLib-chovxzsxubiaitedgbrcncywfqdp/Build/Products/Debug-iphoneos/libSkyIOSLib.a, file was built for archive which is not the architecture being linked (i386): /Users/Bing/Library/Developer/Xcode/DerivedData/SkyIOSLib-chovxzsxubiaitedgbrcncywfqdp/Build/Products/Debug-iphoneos/libSkyIOSLib.a

仔細閱讀了下,好像說的lib是非i386架構編譯的,也就是說這個項目必須用386方式編譯的lib(我的項目是模擬器的)。

原因找到了,從lib項目下手,目標架構不要用ARM而用386.

修改很簡單,編譯目標選擇iPhone x.x Simulator就可以了

編譯的目標文件在 Debug-iphonesimulator裏,再放到項目里加載就沒問題了


總結問題就是,模擬器需要用386架構編譯,真機爲ARM架構。


發佈了29 篇原創文章 · 獲贊 12 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章