4

非公式のOpenSDKを使用してiDevice市場向けにいくつかのアプリケーションをプログラミングしていますが、LinuxではなくWindowsにオープンツールチェーンをインストールするのに問題があります(Linuxを使用しますが、仕事用のコンピューターにはインストールできません)。 GNUアセンブラ(GAS)。

GASが出力ファイルのフォーマットとしてiDeviceをターゲットにすることは可能ですか?そうでない場合は、iPod touchにアセンブルできるWindowsまたはLinuxベースのアセンブラー(できればオープンソース)はありますか?

4

3 に答える 3

2

gcc または Gas は、iOS アプリ バンドルを作成する最後のステップではないことに注意してください。公式の Xcode ビルド シーケンスでは、リンク、UniversalBinary のマージ、パッケージ化、およびコード署名が続きます。そのため、選択した開発プラットフォームで実行されるこれらの手順の少なくともいくつかにはツールが必要になる場合があります。

于 2010-08-30T22:26:55.123 に答える
1

技術的には、iPhone を対象とする GNU ツールチェーンを使用して、クロス アセンブラやクロス コンパイラを作成することもできます。マジックは、正しいアーチ文字列を binutils の "configure" に渡すことです。--target=arm-apple-darwinデフォルトでどの ARM コマンドセットを使用するかを binutils に伝えるのを覚えていない引数を追加する必要があります。したがって、クロスアセンブラを作成することは可能であり、それは難しいことです。

しかし、それは小さな一歩にすぎません。また、Mach-O ファイルを処理できるリンカも必要ですが、その設定方法がわかりません。Linux で iPhone にクロスコンパイルするための完全なツールチェーンがあり、元の Apple SDK を使用し、カスタムのクロス gcc を使用していることを私は知っています。ただし、Apple は、主に Flash から iPhone へのクロスコンパイラを禁止するために、クロスコンパイラの使用を明示的に禁止しています。また、アプリにコード署名する必要がありますが、それができる OSS ツールがあるかどうかはわかりません。

他の人がすでに言っているように、eBay で中古の Mac Mini を手に入れてください。Mac なしでは、それほど遠くまで行くことはできません。たとえそうしたかったとしても、最初に iPhone 向けのコンパイルに関する詳細な知識が必要であり、その知識は Mac でしか得られません。

また、デバッグ、メモリ リークの検出、GUI の構築を容易にする優れたデバッガ、Instruments および Interface Builder なしでは生きたくないでしょう。Interface Builder がなければ、GUI を完全に手動でコーディングする必要があり、それにはさらに多くの時間がかかり時は金なりです。多くの本やハウツーは、あなたにとってかなり役に立たないでしょう。全体として、クロスコンパイルを使用してアプリをハッキングしようとすると、光沢のある iMac と開発時間を提供するのにかかる費用よりも、会社に多くの費用がかかります。

于 2010-09-04T22:46:43.533 に答える
1

技術的に可能だとしても、私はそのような事業に乗り出したくありません。コード署名だけでなく、アプリ ストアの承認に関しても、大きな問題に直面する可能性があります。Apple は、公式ツールのみを使用する人々に非常に熱心であり、クロスコンパイラなどの使用を禁止しています。あなたのアプリがあなたが提案した方法で作成されたというわずかなヒントを見つけた場合、彼らはそれを拒否する可能性があります.

たとえそうしないとしても、それは私が取らないリスクです。ワークフローを開発し、すべての作業を行い、すべてのコード署名やその他の問題を解決してから、Apple がアプリを拒否することを想像してみてください。

Mac での作業に慣れることはそれほど難しくありません。チャンスをつかむ前に、少なくとも試してみてください。

于 2010-09-03T12:29:42.653 に答える