2

OK、明らかなパッケージングと署名の問題は別として、Linux や Windows などの Apple 以外のオペレーティング システムから正しく構築された LLVM ビットコード (IR) を使用することで、IOS/iPhone 互換の実行可能ファイルをコンパイルすることが可能でしょうか? LLVM、Clang、GCC などのオープン ソース コンパイラ インフラストラクチャの組み合わせは?

基本的に考えているのは、

  1. 既存のクロスプラットフォーム SDK (IOS 互換) を LLVM 中間表現 (IR/ビットコード) にコンパイルします。

  2. LLVM 分析ツールを使用して、このレイヤー内の IOS 固有の LLVM (IR) 関数呼び出しを分析して識別します。

  3. Apple 以外のシステムで SDK を LLVM IR にコンパイルした後、Mac 以外のホストによって生成された対応する LLVM IR 関数呼び出し内の Apple/IOS で生成された LLVM-bitcode-SDK-representation を置き換えます

  4. [おそらく] Apple 以外のホスト コンパイル マシン (Linux や Windows など) で IOS 互換の実行可能ファイルをビルドするために、Mac の XCode/Clang/LLVM インフラストラクチャによって発行されるビルド フラグを使用します。

これが実現可能であれば、後で iPhone/IOS バンドルの作成を調査し (IPA の構造は文書化されています。Google に問い合わせてください)、他のクロスプラットフォームで既に使用されているオープンソースの Apple コード署名ルーチンを使用します。 IOS SDK の

4

2 に答える 2

4

RoboVM は、Mac OS 以外の OS からの iOS アプリのクロスコンパイルをまだサポートしていませんが、将来的にはサポートする予定です。Linux で動作する iOS クロス コンパイル ツールチェーンを次に示します

于 2013-06-08T17:12:20.737 に答える