Cordova で Archive 時に bitcode 周りでエラーが出た際の対処法
9 years ago
オレの Advent Calendar 2015 - Adventar の 22 日目です.
すごいピンポイントですがハマったのでメモ残しておきます.
cordova で admob 使う際の定番プラグインといえば 『cordova-admob-pro』ですが, 現時点(2015/12)の Xcode で Archive しようとすると下記のようなエラーが出てビルドできません.
ld: '<プロジェクト名>/Plugins/cordova-plugin-admobpro/GoogleMobileAds.framework/GoogleMobileAds(GADDefaultInAppPurchaseFlow.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
cordova-plugin-facebook とかでも同じようなエラーが出るようです.
bitcode ってのが原因らしいです.
Xcode の Project
-> Build Setting
で bitcode
を検索して YES
になっているところを NO
に変更します.
これで一応ビルドは通るようになります.
が cordova で作っているのに Xcode でプロジェクトイジるのは気持ち悪いですよね. 根本解決ってなるとプラグイン内の sdk をバージョンアップさせるとかでしょうけど...
気が向いたらプラグイン作ります!
Reference
- Cordovaめも: GoogleMobileAds does not contain bitcode
- cordovaでiOSアプリをビルドした際に、bitcodeのエラーが出た場合のメモ - Qiita
issue にも挙がってた