ubuntu 用の gnu arm ツールチェーンをインストールしようとしています。最初に CodeSourcery から tar をダウンロードしました。ただし、bin フォルダーに入ると、どのバイナリも実行できません。./ を使用して ./ なしで PATH に入れてみましたが、「コマンドが見つかりません」と表示され続けますが、ファイルは目の前のフォルダーにあります。次に、sudo apt-get install gcc-arm-linux-gnueabi を試しましたが、正常にインストールされたと表示された後を除き、whereis gcc-arm-linux-gnueabi では見つかりません。誰でも助けることができますか?
11 に答える
64 ビット OS でコンパイルしていますか? 試す:
sudo apt-get install ia32-libs
Raspberry Pi カーネルをコンパイルしようとしたときに、同じ問題が発生しました。私は Ubuntu 12.04 64 ビットでクロスコンパイルしていましたが、64 ビット システムでツールチェーンを使用するには ia32-libs が必要です。
http://hertaville.com/2012/09/28/development-environment-raspberry-pi-cross-compiler/を参照してください。
arm-none-linux-gnueabi-
CodeSourcery の規則は、すべての実行可能ファイルにプレフィックスを使用するgcc-arm-linux-gnueabi
ことです。したがって、CodeSourcery gcc の標準名は になりますarm-none-linux-gnueabi-gcc
。
CodeSourcery G++ をインストールしたら、CodeSourcery ディレクトリを に追加する必要がありますPATH
。
通常、CodeSourcery を/opt/arm-2010q1
次のようなディレクトリにインストールすることを好みます。どこにインストールしたかわからない場合は、 を使用して見つけることができますが、正常に機能する前にlocate arm-none-linux-gnueabi-gcc
、locate db を使用して強制的に更新する必要がある場合があります。sudo updatedb
locate
CodeSourcery がインストールされている場所を特定したら、次の~/.bashrc
ように編集して PATH に追加します。
PATH=/opt/arm-2010q1/bin:$PATH
また、定義するのは慣習的で非常に便利です
CROSS_COMPILE=arm-none-linux-gnueabi-
定義されて.bashrc
いるためCROSS_COMPILE
、ほとんどのツールは、何もしなくてもARMコンパイルに適切なコンパイラを自動的に使用するためです。
VMでubunto 14.04.03 64ビットでraspberry piカーネルをクロスコンパイルしようとすると、同じエラーが発生しました。解決策はここで見つかりました:
-クロスコンパイルに使用するパッケージを Ubuntu ボックスにインストールします。
sudo apt-get install gcc-arm-linux-gnueabi make git-core ncurses-dev
-ツールチェーンをダウンロード
cd ~
git clone https://github.com/raspberrypi/tools
-ツールチェーンをパスに追加します
PATH=$PATH:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
path コマンドの x64 バージョンに注意してください
64 ビット OS を使用している場合は、この追加のライブラリをインストールする必要があります。
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
ubuntu または debian の 64 ビット ビルドを使用している場合 (「cat /proc/version」などを参照)、クローンを作成した場合は、単純に 64 ビット クロス コンパイラを使用する必要があります。
git clone https://github.com/raspberrypi/tools
次に、64ビットツールが
tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64
そのディレクトリを gcc-toolchain に使用します。私が従ったコンパイルのための便利なチュートリアルは、Building and compiling Raspberry PI Kernel (上記の -x64 パスを ${CCPREFIX} として使用) にあります。
x86_64 ユーザーランドを実行しているボックスに、i686 用にコンパイルされたツールチェーンをインストールしました。
i686 VM を使用します。
次のコマンドを試してください。
which gcc-arm-linux-gnueabi
コマンドが にインストールされている可能性が非常に高い/usr/bin
です。