2012-12-24 13 views
29

clangをARMのクロスコンパイラ(./configure --target=armv7l-unknown-linux-gnueabihfで設定)として使用するようにclangをコンパイルしましたが、Cコードをコンパイルしようとすると、/usr/bin/asを使用しようとします。私はすでにARM用にコンパイルされたbinutilsを持っており、それらは別のディレクトリにあります。 clang(またはllvm)に、指定したアセンブラを使用するように指示するにはどうすればよいですか?clangにカスタムアセンブラを使用するにはどうすればよいですか?

+0

:あなたがうまくいけばと設定使用しているので

./configure --host=armv7l-unknown-linux-gnueabihf --build=i686-unknown-linux-gnu 

は見てみましょうautotoolsの私がファイルを設定しているかどうかを見てみましょう。とにかく、アセンブラを実行しようとするのではなく、マシンコードジェネレータを使用しないでください。 '--integrated-as'を渡してみましたか? '-v'を使ってコマンドラインと出力の例を表示できますか? –

+0

私のconfigureラインは、あまり役に立ちませんが、 '../llvm/configure --target = mipsel-sde-elf --prefix =/some/prefix --enable-optimized'です。これは正常に動作し、 '/ some/prefix/mipsel-sde-elf-as'を実行しました。つまり、私は通常アセンブラを使用しているので、しばらくテストしていません。 –

+0

@CarlNorumまた、clangと同じフォルダに統合アセンブラ( 'armv7l-unknown-linux-gnueabihf-llvm-as')を持っていますが、まだ'/usr/bin/as'を使っています。私は 'armv7l-unknown-linux-gnueabihf-llvm-as 'が'/usr/bin/as'を内部的に呼び出すかどうかは分かりません。 – JosephH

答えて

0

私はいつも./configureを使ってソースディレクトリから設定するのに問題があり、最後にあきらめました。今日私は別のディレクトリ、つまり..//configureから設定していますが、設定に絶対パスを使用することをお勧めします。

ARM binutilsは、clangに使用しているのと同じ接頭辞にインストールし、& build clangを構成するときにパスに含まれていることを確認する必要があります(PATH =/some/prefix/bin:$ PATH;/configure --target = armv7l-unknown-linux-gnueabihf。パッケージングのために別々のディレクトリに置いておきたい場合は、DESTDIR = installをインストールしてください。

私は一般的に打ち鳴らすを構築していないが、私はdevkitARMに使用buildscriptsは役に立つかもしれません - http://sourceforge.net/p/devkitpro/buildscripts/ci/c372699fc7b4de90eb044314ce5bed04db640291/tree/

+0

申し訳ありませんが、前にソースディレクトリと同じディレクトリにclangを設定したことはありません。私の質問に含まれているコマンドは、簡潔さのために '--prefix'フラグを省略しました。 CarlNorumのコメントからわかるように、私は '--prefix'フラグを含めることに気付きましたが、それでも私にとってはうまくいきませんでした。奇妙なことは、実際にコンパイルプロセスは、(正しいターゲットのトリプルで) 'bin 'フォルダに統合されたアセンブラバイナリを作成するようですが、決して使用しません。私は間違いなくあなたの答えに含まれているビルドスクリプトを見てみましょう。 – JosephH

2

がすべてのcc ARなどのユーティリティがarmv7l-に接頭辞になりますどの設定するには、--hostオプションを渡してみてください未知のlinux-gnueabihf- 例えば:私はこの最近のをやった知って automake Cross compiling

+0

あなたはその質問を誤解していたと思います。 @JosephHはclangを使ってプログラムをクロスコンパイルする方法を尋ねていますが、あなたの答えは "clang自身をコンパイルする方法"に関するものです。 –

関連する問題