2016-11-30 2 views
0

x86システムでMIPS用にOATH Toolkitをビルドしようとしています。静的なビルドを生成したいので、どのMIPSシステムでも動作する可能性が高いです。ただ、ターゲットシステム上でサポートされるISAより正確にはoath-toolkitの静的リンクMIPSビルドをクロスコンパイルするにはどうすればよいですか?

は以下のとおりです。mips1 mips2 mips32r1 mips32r2

私は今、私はそれを持っているか、これを行うと、私は正常に設定し、そうbuildrootを構築するためにツールチェーンを準備する必要があります理解するものから内部~/buildroot-2016.08.1/output/target

oath-toolkitコードを入れてチェックをビルドするには、ビルドルートを使用/有効にする方法を教えてください。

注:私はbuildrootの使用を余儀なくされていないので、代替案を検討します。

答えて

2

適切な引数を指定してconfigureスクリプトを実行するだけで、クロスルートコンパイラとしてBuildrootコンパイラを使用し、静的にリンクする引数を使用できます。

./configure --enable-static --disable-shared \ 
    --target=mips-buildroot-linux-gnu --host=mips-buildroot-linux-gnu \ 
    CC=$HOME/buildroot-2016.08.1/output/host/usr/bin/mips-linux-gcc 

上記は、glibcとビッグエンディアンのMIPSを使用していることを前提としています。ディレクトリ名~/buildroot-2016.08.1/output/host/usr/mips*を確認して、--target/--hostオプションの正しい値と、CC=オプションの正しい値が~/buildroot-2016.08.1/output/host/usr/binの内容であることを確認します。

"mips 32"のアーキテクチャの変更(BR2_mips_32)をすべてのターゲットシステムと互換性があるように選択する必要があることに注意してください。

glibcでは、NSSライブラリを動的にロードしようとするため、完全に静的にリンクされた実行可能ファイルがない可能性があることにも注意してください。これは、例である。ホスト名を解決するためにgetaddrinfoが使用されている場合これを避けるには、uClibcまたはmuslを使用する必要があります。

関連する問題