1

ソースから gnuarm.org のツールチェーンを構築したいと考えています。x64 Linux を実行しているため、バイナリ バージョンを使用したくありません。ある種のチュートリアルを教えてもらえますか?

4

3 に答える 3

4

バイナリ パッケージのビルドに使用されるデフォルトのコマンド/パラメータは次のとおりです。ソースをダウンロードし、解凍して発行します。

  1. cd [binutils ビルド]
  2. [binutils-source]/configure --target=arm-elf --prefix=[toolchain-prefix] --enable-interwork --enable-multilib --with-float=soft
  3. すべてインストールする
  4. export PATH="$PATH:[ツールチェーンのプレフィックス]/bin"
  5. cd [gcc ビルド]
  6. [gcc-source]/configure --target=arm-elf --prefix=[toolchain-prefix] --enable-interwork --enable-multilib --with-float=soft --enable-languages="c,c++ " --with-newlib --with-headers=[newlib-source]/newlib/libc/include
  7. make all-gcc install-gcc
  8. cd [newlib-build]
  9. [newlib-source]/configure --target=arm-elf --prefix=[toolchain-prefix] --enable-interwork --enable-multilib --with-float=soft
    1. すべてインストールする
    2. cd [gcc ビルド]
    3. すべてインストールする
    4. cd [gdb ビルド]
    5. [gdb-source]/configure --target=arm-elf --prefix=[toolchain-prefix] --enable-interwork --enable-multilib --with-float=soft
    6. すべてインストールする

11〜12行目は効果がないようです。gcc < 4.x を使用することはお勧めできません。binutils をビルドすると、次のエラーが発生する可能性があります。

../../binutils-2.19/gas/config/tc-arm.c: 関数 's_arm_unwind_save_mmxwr': ../../binutils-2.19/gas/config/tc-arm.c:3459: エラー:フォーマットは文字列リテラルではなく、フォーマット引数はありません

解決策は簡単です。ここのパッチが示唆するように、エラーのある行に FIRST パラメータとして「%s」を追加するだけです: http://www.mail-archive.com/bug-binutils@gnu.org/msg06475.html

洞察を構築できませんでしたが、他の方法でデバッグすることは可能だと思います。

于 2008-12-05T11:30:33.027 に答える
1

Insightをコンパイルするには、 libx11-devをインストールする必要があります。

sudo apt-get install libx11-dev

それに加えて、あなた自身の答えはうまく機能します。

編集:ああ、そしてあなたもtermcapを見逃すかもしれません、ここでそれを入手してください:GNU Termcap

Edit2:Configureは、属性warn_unused_resultで宣言された戻り値 "'xxx'を無視することについては厳しいようです。したがって、クリーンビルドを取得するには、戻り値をキャッチするためにオプションまたは約12のインスタンスを変更する必要があります。

于 2008-12-05T15:35:06.807 に答える
-1
  1. 「ファイル」の下で利用可能なソースをダウンロードします
  2. それらを開梱する
  3. 解凍された各ディレクトリに移動し、次のように入力します。

    ./configure --help

    利用可能なオプションを取得してから実行します

    ./configure [オプション]

    作る

    チェックする

    インストールする

于 2008-12-03T21:18:41.530 に答える