第三方庫不包含bitcode就會報錯的原因:
報的錯誤:ld: 『/users/**/framework/sdks/polymerpay/library/mobstat/lib**sdk.a(**forsdk.o)』does not contain bitcode. you must rebuild it with bitcode enabled (xcodesetting enable_bitcode), obtain an updated library from the vendor, or disablebitcode for this target. for architecture arm64
得到的資訊是引入的乙個第三方庫不包含bitcode。
bitcode是個什麼鬼?
而在what』s new in xcode-new features in xcode 7中,還有一段如下的描述:
bitcode配置
在上面的錯誤提示中,提到了如何處理我們遇到的問題:
you must rebuild it with bitcode enabled(xcode setting enable_bitcode), obtain an updated library from the vendor, ordisable bitcode for this target. for architecture arm64
要麼讓第三方庫支援,要麼關閉target的bitcode選項。
實際上,在xcode 7中,我們新建乙個ios程式時,bitcode選項預設是設定為yes的。我們可以在」build settings」->」enable bitcode」選項中看到這個設定。不過,我們現在需要考慮的是三個平台:ios,mac os,watchos。
對於ios,bitcode是可選的;對於watchos,bitcode是必須的;而mac os是不支援bitcode。
如果我們開啟了bitcode,在提交包時,下面這個介面也會有個bitcode選項:
所以,如果我們的工程需要支援bitcode,則必要要求所有引入的第三方庫都支援bitcode。
通過本文對bitcode的概念及配置情況的簡要介紹,希望ios開發人員在工程執行中遇到類似的情況,可以根據上文的介紹更有效的找到原因並及時處理。
iOS中Bitcode的介紹及配置
用xcode 7 beta 3在真機 ios 8.3 上執行一下工程,結果發現工程編譯不過。看了下問題,報的是以下錯誤 ld users framework sdks polymerpay library mobstat lib sdk.a forsdk.o does not contain bit...
iOS中Bitcode的介紹及配置
用xcode 7 beta 3在真機 ios 8.3 上執行一下工程,結果發現工程編譯不過。看了下問題,報的是以下錯誤 ld users framework sdks polymerpay library mobstat lib sdk.a forsdk.o does not contain bit...
iOS中Bitcode的介紹及配置
用xcode 7 beta 3在真機 ios 8.3 上執行一下工程,結果發現工程編譯不過。看了下問題,報的是以下錯誤 ld users framework sdks polymerpay library mobstat lib sdk.a forsdk.o does not contain bit...