web-dev-qa-db-ja.com

gcc-arm-linux-gnueabiコマンドが見つかりません

Ubuntuのgnuアームツールチェーンをインストールしようとしています。最初にCodeSourceryからtarをダウンロードしました。ただし、binフォルダーに移動すると、どのバイナリも実行できません。 ./なしでPATHに入れてみましたが、「Command not Found」と表示され続けますが、ファイルは目の前のフォルダーにあります。それから、Sudo apt-get install gcc-arm-linux-gnueabiを試しましたが、正常にインストールされたと表示された後、whereis gcc-arm-linux-gnueabiで見つけることができません。誰でも助けることができますか?

23
user1952441

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/ を参照してください

19
Stacey Richards

修正、使用:

Sudo apt-get install gcc-arm*
18
Ahmed Mkaouar

CodeSourceryの規則では、言及するarm-none-linux-gnueabi-ではなく、すべての実行可能ファイルに接頭辞gcc-arm-linux-gnueabiを使用します。したがって、CodeSourcery gccの標準名はarm-none-linux-gnueabi-gccになります。

CodeSourcery G ++をインストールしたら、CodeSourceryディレクトリをPATHに追加する必要があります。

通常、/opt/arm-2010q1などのディレクトリにCodeSourceryをインストールすることを好みます。インストールした場所がわからない場合は、locate arm-none-linux-gnueabi-gccを使用して検索できますが、locateが正常に機能する前に、Sudo updatedbを使用して検索データベースを強制的に更新する必要があります。 。

CodeSourceryがインストールされている場所を特定したら、次のように~/.bashrcを編集してPATHを追加します。

PATH=/opt/arm-2010q1/bin:$PATH

また、定義することは慣習的で非常に便利です

CROSS_COMPILE=arm-none-linux-gnueabi-

.bashrcでは、CROSS_COMPILEが定義されているため、ほとんどのツールは何もせずにARMコンパイルに適切なコンパイラーを自動的に使用します。

11
mvp

64ビットOSを使用している場合は、この追加のライブラリをインストールする必要があります。

Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
7
Jeegar Patel

vMの下でUbunto 14.04.0364bitで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バージョンに注意してください

7
axodus

私も同じ問題に直面しており、次の依存関係をインストールした後に解決しました。

Sudo apt-get install lib32z1-dev
5

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に使用します。私が従ったコンパイルのための有用なチュートリアルはここにあります Raspberry Pi Kernelのビルドとコンパイル (上記の-x64パスを$ {CCPREFIX}として使用します)

3
RookieGuy

それは少し反直感的です。ツールチェーンはgcc-arm-linux-gnueabiと呼ばれます。ツールを呼び出すには、次を実行します。arm-linux-gnueabi-xxx

ここで、xxxはgccまたはarまたはldなどです

2
liteflier

X86_64ユーザーランドを実行しているボックスにi686用にコンパイルされたツールチェーンをインストールしました。

I686 VMを使用します。

1
strowger

次のコマンドを試してください。

which gcc-arm-linux-gnueabi

コマンドが/usr/binにインストールされている可能性が高いです。

1
user1055604