-U and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together の対応方法

  • 11
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

環境

  • Xcode Version 7.0 beta 6 (7A192o)

何ができないか

既存プロジェクトをXcode 7.0 beta 6 プレビューでビルドしようとしたら以下のログを吐いて失敗した。

ld: -U 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)

Bitcodeとは

WWDC - App Thinning メモ - Qiita

 Apple がアプリのコンパイルを代行して自動最適化してくれる仕組み。アプリを中間表現である Bitcode を含めた形式で iTunes Connect に提出しておけば、将来的に CPU アーキテクチャが変わった際に Apple がよろしくやってくれるというもの、らしい。Bitcode を採用する場合には、そのアプリに含めるすべてのバイナリ(フレームワーク、ライブラリ)も同様に Bitcode を含める必要がある。
 なお watchOS では Bitcode が必須の模様。

ENABLE_BITCODEをNOにする

自分のアプリではBitcodeは不要なのでNOにする。

Kobito.kXyrX7.png

  1. ProjectのBuild Settingsで「ENABLE_BITCODE」を検索する。
  2. デフォルトでYesになっているのでNoに変更して再ビルドする。

無事ビルドできるようになりました!