2

AppleTV プロジェクト用に cocos2d-js をコンパイルすると、次のエラーが表示されます。

ld: '/Users/pepa/Library/Developer/Xcode/DerivedData/GameXY-gwkkxwmtiilmalhdxfdjgqdfhedy/Build/Products/Debug-appletvos/libcocos2d tvOS.a(bio_lib.o)' にはビットコードが含まれていません。ビットコードを有効にして再構築するか (Xcode 設定 ENABLE_BITCODE)、アーキテクチャー arm64 のベンダーから更新されたライブラリーを入手する必要があります。

ビットコードが有効になっている AppleTV ターゲット用にビルドされたライブラリのみを含めたと思います。しかし、コンパイラはまだ不平を言っています。括弧内のビットコードが欠落しているライブラリを特定するためのヒントはありますか? (bio_lib.o)

もしそうなら、それがどの図書館に属しているか分かりますか? 私のコンピュータでは見つかりませんでした。ここからビルド済みのバイナリを使用しています: https://github.com/elvman/cocos2d-x-3rd-party-libs-bin/tree/tvos

4

2 に答える 2

2

次の手順を使用します。

  1. git、make、autoconf、automake、libtool をインストールします。Homebrew を使用している場合、これは次の方法で実行できます。

    brew install git make autoconf automake libtool

  2. リポジトリのクローン:

    git clone https://github.com/cocos2d/cocos2d-x-3rd-party-libs-src.git

  3. ファイルに移動して、次cocos2d-x-3rd-party-libs-src/buildの 2 行を変更しますtvos.ini

    cfg_build_release_mode="-O3 -DNDEBUG -fembed-bitcode"

    cfg_build_debug_mode="-O0 -g -DDEBUG -fembed-bitcode"

  4. ビルド スクリプトを実行します。

    build.sh -p=tvos --libs=curl --arch=arm64,x86_64 --mode=release

  5. libcurl.a の暗号および SSL ライブラリを更新する

于 2015-11-28T08:17:44.610 に答える
1

ここに来て、ビットコードを有効にして iOS 用の cocos2d-x (3.10) をビルドしようとしている人は大丈夫です。user1675169 ( https://stackoverflow.com/a/33969215/129202 ) の回答に基づいて実行しましたが、もちろん、build.sh 行の os を置き換えました。これらすべてを 1 つずつ置き換える必要がありました。 :

  • libtiff.a
  • libwebp.a
  • libchipmunk.a
  • libjpeg.a
  • libpng.a
  • libfreetype.a

これらのすべてを交換するのに時間がかかりました。cocos2d-x プロジェクトで使用するものによっては、他のライブラリも置き換える必要がある場合があります。おそらく最終的に、cocos2d-x 3.11 は、最初にビットコードを有効にしてこれらのライブラリをすべて再コンパイルした状態で提供されるでしょう。

再コンパイル行は次のようになります。

build.sh -p=ios --libs=tiff --arch=arm64,x86_64 --mode=release

最終的に、ビットコードを有効にして libcocos2d 全体をプリコンパイルすることができました。これをまだ iTunes Connect に送信しようとはしていませんが、最終的には実際に機能する可能性があると思います。

于 2016-02-23T07:47:34.660 に答える