オープンソースプロジェクトのクロスコンパイルの問題
1615 ワード
クロスコンパイルオープンソースプロジェクト
アプリケーションをクロスコンパイルする場合、通常は./対応するMakefile./configureの最も重要な3つのオプションは、次のとおりです.
-host=HOSTはソフトウェアが実行するシステムプラットフォームを指定する.指定がない場合は`configを実行します.guess’で検出する.
-build=BUILDは、パッケージがインストールするシステムプラットフォームを指定する.指定がない場合、デフォルト値は'-host'オプションの値になります.
-target=GARGET指定ソフトウェアは(target to)向けのシステムプラットフォームである.これは主にコンパイラやアセンブリなどのプログラム言語ツールのコンテキストで機能する.指定がない場合、デフォルトでは'-host'オプションの値が使用されます.
一般的に、–hostを指定すればいいことを覚えておいてください.–hostはクロスコンパイルツールチェーンのプレフィックスを指定します.
よくある質問
1.host system type not recognized
./configure --host=aarch64-linux-gnu
結果出力
checking host system type... Invalid configuration aarch64-linux-gnu': machineaarch64' not recognized
解決策
sudo apt-get install libtool
cp /usr/share/libtool/build-aux/config.sub .
cp /usr/share/libtool/build-aux/config.guess .
リファレンスコンパイルスクリプト
./configure --host=aarch64-linux-gnu \
--prefix=/home/lvxinliang/workspace/log4cpp/log4cpp/out