2

crosstool-NG をインストールし、arm-unknown-linux-gnueabi をターゲットとするホスト + ビルド x86 マシンに GCC をビルドしました。次に、arm-unknown-linux-gnueabi-gcc を使用して、ARM ボードで適切に動作するプログラムをコンパイルしました。

ARMでホストされるARMをターゲットにして、GCCを構築したいと考えています。専門用語は

build=i486-pc-linux-gnu
target=arm-unknown-linux-gnueabi-gcc
host=arm-unknown-linux-gnueabi-gcc

どうすればいいですか?--host=arm-unknown-linux-gnueabi-gcc を渡す crosstool-NG に対して ./configure を実行する必要がありますか?

または、CC/etc の環境変数を変更する必要がありますか?

4

1 に答える 1

1

これは、.configファイルを使用して行います。名前にコンマが入っているサンプルが見やすいと思います。主な違いは、複数のクロス コンパイラを作成するには、 ct-ngを複数回実行する必要があることです。

ct-ngは最近、カナダの交配種にいくつかの変更を加えました。ただし、おそらく PC 上で動作する元のクロス コンパイラを再利用する必要があります。その理由は、コンパイラにはARM用にコンパイルされたライブラリが含まれており、これらのライブラリを PC で生成する必要があるためです。一般に、iX86-host+ARM-target コンパイラがパス上にあることを確認してください。次に、ツールチェーンメニューで、このツール チェーンのホスト タプルまたはプレフィックスを設定する必要があります。ビルド タプルを同じコンパイラに設定する必要があります。

ct-ng ヘルプ | grep 変数

これにより、 grepでヒントを取得できる一連のテキストファイルを含むディレクトリが作成されます。

たとえば、 6 - Toolchain types.txtを参照してください。 建物の複雑さに関しては、クロスネイティブまたはカナダクロスは実際には問題ではありません。クロス ネイティブの場合は 1 つの中間体のみが必要ですが、カナディアン クロスの場合は 2 つの中間コンパイラーが必要です。

編集: Ct-ng のコンパイラの構築方法には、すべての出来事に関する情報があります。

于 2013-01-21T01:16:44.647 に答える