理解什么是Bitcode

用Xcode 7 beta 3在真機(jī)(iOS 8.3)上運(yùn)行一下工程,結(jié)果發(fā)現(xiàn)工程編譯不過。看了下問題剑逃,報(bào)的是以下錯(cuò)誤:

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

得到的信息是引入的一個(gè)第三方庫不包含bitcode。

Bitcode是個(gè)什么鬼官辽?

查閱了一下官方文檔蛹磺,在App

Distribution Guide–App Thinning (iOS, watchOS)一節(jié)中,找到了下面這樣一個(gè)定義:

Bitcode is an intermediate representationof a compiled program. Apps you upload to iTunes Connect that contain bitcodewill be compiled and linked on the App Store. Including bitcode will allowApple to re-optimize your app binary in the future without the need to submit anew version of your app to the store.

說的是bitcode是被編譯程序的一種中間形式的代碼同仆。包含bitcode配置的程序?qū)?huì)在App store上被編譯和鏈接萤捆。bitcode允許蘋果在后期重新優(yōu)化程序的二進(jìn)制文件,而不需要重新提交一個(gè)新的版本到App store上俗批。

而在What’s New in Xcode-New Features in Xcode 7中俗或,還有一段如下的描述:

Bitcode. When you archive for submission tothe App Store, Xcode will compile your app into an intermediate representation.The App Store will then compile the bitcode down into the 64 or 32 bitexecutables as necessary.

當(dāng)提交程序到App store上時(shí),Xcode會(huì)將程序編譯為一個(gè)中間表現(xiàn)形式(bitcode)扶镀。然后App store會(huì)再將這個(gè)bitcode編譯為可執(zhí)行的64位或32位程序蕴侣。

再看看這兩段描述焰轻,都是放在App Thinning(App瘦身)一節(jié)中臭觉,可以看出其與包的優(yōu)化有關(guān)了。

Bitcode配置

在上面的錯(cuò)誤提示中,提到了如何處理我們遇到的問題:

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

要么讓第三方庫支持蝠筑,要么關(guān)閉target的bitcode選項(xiàng)狞膘。

實(shí)際上,在Xcode 7中什乙,我們新建一個(gè)iOS程序時(shí)挽封,bitcode選項(xiàng)默認(rèn)是設(shè)置為YES的。我們可以在”Build Settings”->”Enable Bitcode”選項(xiàng)中看到這個(gè)設(shè)置臣镣。不過辅愿,我們現(xiàn)在需要考慮的是三個(gè)平臺(tái):iOS,Mac OS忆某,watchOS点待。

對(duì)于iOS,bitcode是可選的弃舒;對(duì)于watchOS癞埠,bitcode是必須的;而Mac OS是不支持bitcode聋呢。

如果我們開啟了bitcode苗踪,在提交包時(shí),下面這個(gè)界面也會(huì)有個(gè)bitcode選項(xiàng):

所以削锰,如果我們的工程需要支持bitcode通铲,則必要要求所有引入的第三方庫都支持bitcode。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末器贩,一起剝皮案震驚了整個(gè)濱河市测暗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌磨澡,老刑警劉巖碗啄,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異稳摄,居然都是意外死亡稚字,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門厦酬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胆描,“玉大人,你說我怎么就攤上這事仗阅〔玻” “怎么了?”我有些...
    開封第一講書人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵减噪,是天一觀的道長(zhǎng)短绸。 經(jīng)常有香客問我车吹,道長(zhǎng),這世上最難降的妖魔是什么醋闭? 我笑而不...
    開封第一講書人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任窄驹,我火速辦了婚禮,結(jié)果婚禮上证逻,老公的妹妹穿的比我還像新娘乐埠。我一直安慰自己,他們只是感情好囚企,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開白布丈咐。 她就那樣靜靜地躺著,像睡著了一般龙宏。 火紅的嫁衣襯著肌膚如雪扯罐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,050評(píng)論 1 291
  • 那天烦衣,我揣著相機(jī)與錄音歹河,去河邊找鬼。 笑死花吟,一個(gè)胖子當(dāng)著我的面吹牛秸歧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播衅澈,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼键菱,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了今布?” 一聲冷哼從身側(cè)響起经备,我...
    開封第一講書人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎部默,沒想到半個(gè)月后侵蒙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡傅蹂,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年纷闺,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片份蝴。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡犁功,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出婚夫,到底是詐尸還是另有隱情浸卦,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布案糙,位于F島的核電站限嫌,受9級(jí)特大地震影響靴庆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜萤皂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望匣椰。 院中可真熱鬧裆熙,春花似錦、人聲如沸禽笑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽佳镜。三九已至僚稿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蟀伸,已是汗流浹背蚀同。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留啊掏,地道東北人蠢络。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像迟蜜,于是被迫代替她去往敵國(guó)和親刹孔。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容