5

短い質問: intel 用と ppc 用の 2 つのアプリをどのようにして 1 つの Universal Binary にパッケージ化しますか?

この問題に関する私の現在の考え:

ユニバーサルバイナリに関するアップル開発者向けドキュメントを読みましたが、答えを見つけることができなかったため、不可能な場合があります。

ここには立ち入らない理由により、私のプログラムには 2 つのアプリがあります (xtools を使用してバイナリを一度コンパイルする必要があります)。リソースの共有は問題ではありません。

MyProg_intel.app と MyProg_ppc.app の両方を 1 つの zip に入れ、そのように配布することができました。しかし、それは私のプログラムを配布しようとしている多くの人々にとって混乱を招くかもしれません。

4

4 に答える 4

6

lipoツールを参照してください。PPC と i386 のバイナリをつなぎ合わせることができます。

また、 Xcode で条件付きビルド設定を使用すると、異なるアーキテクチャの個別のターゲットを回避できる場合があります。これは、たとえば、アーキテクチャごとに異なるバイナリ ライブラリにリンクする必要がある場合に便利です。

于 2009-08-19T14:18:49.973 に答える
4

lipo の man ページを確認してください。-create を使用して、複数の入力ファイルを取得し、複数のアーキテクチャで単一の出力ファイルを作成できると思います。

于 2009-08-19T14:16:20.833 に答える
1

Apple の開発者向け Web サイトには、Building an Open Source Universal Binaryに関する記事があり、ビルド スクリプトを使用して Xcode を使用して Universal Binary を「パッケージ化」する方法を説明しています。これはおそらく正気への最善の道です。を使用することもできますlipoが、長い目で見れば、アプリケーションを更新および保守する場合は、魔法のような Xcode プロジェクトを用意することで、時間の節約になります。

于 2009-08-19T14:18:56.587 に答える
0

ユニバーサル バイナリを作成するには、Xcode を使用し、Intel と PPC の両方のターゲット アーキテクチャを選択する必要があります。私の知る限り、事後的に 2 つの異なるバイナリを 1 つの .app に詰め込むことはできません。

于 2009-08-19T14:15:48.730 に答える