ブログランキング・にほんブログ村へ


iPhone/iPad用潜水艦ゲームアプリ ソナーエコー iTunesにて公開中

2015年09月17日

[iOS] xcode7 : リンカーがエラー / ライブラリ.o does not contain bitcode.

前の記事のxcode7 になったらADmobの6系が通らなくなったって内容だけど、cocoaPodsを使ってADMob SDK 7.4.1つうのを入れてビルドしてみても改善されなかった。

リンカーのエラーを見ると6系のときと同じで、なんかbitcodeとかいうのがないとかなんとか。
ld: '/Users/XXX/Documents/XCodeProjects/XXXXX/Pods/Google-Mobile-Ads-SDK/GoogleMobileAdsSdkiOS-7.4.1/GoogleMobileAds.framework/GoogleMobileAds(GADGestureIdUtil.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 armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

それでこのbitcode問題を調べてみるとやはりxcode7で出るようで、回避方法はBuild Settingsのほうの設定変更だった。

手順としては、 Project / TARGET / Build Settings で All (Basicでは非表示)にすると Build Options セクションに ENABLE_BITCODEという欄があって、これがYesになってる。これをNoに変える。

ADMob SDK 6 系でもこの変更だけで通るかもしれない。通る可能性が濃厚。だが試していない。
(その後この設定変更だけで通ることを確認した @2015.9.20追記)

それはADMob 6 系のSDKの入ってたProjectにADMob 7 をpod installして、古いADMobのライブラリを削除したらそれだけで通っちゃったから。
なんでそうなるの?って感はあるのだけど、まあいいか。

とりあえず懸念事項について一つ道筋が見えた。
タグ:iOS Xcode xcode7
posted by みこあいさ at 11:19| iOS開発