CocoaPods で入れたライブラリがあると、実機でビルドできない ><
環境 : XCode Version 8.2.1 (8C1002)
遭遇したエラー
ld: -weak_library and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
clang: error: linker command failed with exit code 1 (use -v to see invocation)
どうやら ENABLE_BITCODE=NO
にすれば良いっぽい。
その他もろもろのハマりポイント、こちらのエントリが参考になる。
【クソ食らえ】CocoaPodsとApple Mach-O Linker Errorとlinker command failed with exit code 1でどハマり - Qiita
やっぱりこのエントリの最後にあるポイントが抜けポイントだったんだけど・・
微妙に動作が違ったのでメモ。
プロジェクト側の設定
Enable Bitcode 全部 No にする。(これはOK)
Pods側の設定
Podsの選択肢、Debug No, Release Yes にしたらやっとビルド通過した・・
とはいえ全く納得できん!
なんでよ!!
最初とにかく全部Noだろ!と両方Noにしたら認識されず、XCodeに「いーや!お前はどっかYesになってる。ダメだダメだ!!でなおしてこーい!」と怒られ怒られ・・(涙)
(訳:最初と同じリンカエラーがずっと出てるだけ)
どこにもないねん! Yesは残ってないんじゃ!!
とキレまくってたのですが、(その時の全体Find結果がこれ)
ぐぬぬ〜・・と思いながら、さらにググってみたら、これがヒット。
xcode7 - XCODE 7 and ENABLE_BITCODE=YES setting does not work - Stack Overflow
同じこと書いてあるんですが、スクショの絵をよーく見ると、片方だけ(Debugの方だけ)Noにしてる・・
まさかね・・?と思いながら同じ設定にしてみたら・・・ 通りやがった!
1回ビルド通った後、両方No設定(最初のやつ)にしたら・・問題なく通るんですが!!?
なんでよ! ><
全く納得できん・・がともあれやっと一歩進んだ・・
(このXCodeの謎挙動・・ただのバグっぽい。。このエントリの賞味期限多分短いと思うけど・・)