クロスコンパイルについて学び、それを作成する方法について多くの情報を見つけましたが、使用方法に関する情報はほとんどありませんでした。
bluez-utils-3.36
ツールをコンパイルしたいと思います。このウェブサイト私自身のコンパイラを使用してください。クロスコンパイラ(arm-linux-gcc-4.4.3.tgz)が見つかりました。このウェブサイト。私のgccバージョンは4.4.3なので、これが正しいバージョンであるとします。
ホスト(コードを作成するマシン)
Processor: Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz
OS Version: Linux 2.6.32-44 generic
ターゲットマシン:(コンパイルされたファイルを実行する必要があるターゲット)
Processor: ARM926EJ-S rev 5 (v5l)
OS Version: Linux 2.6.35.3-571
この新しいコンパイラでどのようにコンパイルしますかbluez-utils-3.36
?
ベストアンサー1
コンパイラとツールチェーンの他の部分には、GNU標準の命名スキームがあります。
<target triplet>-<tool name>
これ目標三重項これは形です
<machine>-<vendor>-<operatingsystem>
ツール名はコンパイラの名前、またはその他gcc
のツール名です。ld
strip
ar
デフォルトのコンパイラ、つまりクロスコンパイラではなくネイティブバイナリをコンパイルするコンパイラは、gcc
トリプルなしで呼び出されます。
あなたの質問で言及したファイル内のコンパイラのトリプルは次のとおりですarm-none-linux-gnueabi
(クワッドのように見えますが、それはまさにそれです)。したがって、これを使用するには、arm-none-linux-gnueabi-gcc
Normalの代わりに呼び出すだけですgcc
。
を使用して何かをビルドする場合は、通常、通常のMakefile
コンパイラの代わりに実行してMakefile
必要なコンパイラを使用できます。 GNUスクリプトを使用して何かを構築する場合は、CC=arm-none-linux-gnueabi-gcc make
make
configure
ターゲット三重項を指定することもできます。。