32

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

4

11 に答える 11

20

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

于 2013-09-14T11:06:28.013 に答える
14

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 updatedblocate

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

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

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

CROSS_COMPILE=arm-none-linux-gnueabi-

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

于 2013-01-06T08:37:13.987 に答える
6

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 バージョンに注意してください

于 2015-08-17T18:17:00.450 に答える
6

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

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
于 2015-01-06T09:13:15.940 に答える
3

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} として使用) にあります。

于 2016-02-28T12:51:08.323 に答える
2

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

i686 VM を使用します。

于 2013-09-13T04:43:08.487 に答える
1

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

which gcc-arm-linux-gnueabi

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

于 2013-01-06T08:15:54.307 に答える