over 9 years ago

全文90% 參考Ubuntu - 建立 ARM Toolchain (Cross Compiler)
不一樣的部份就是版本比他用的更新,然後提一下碰到的問題

環境:乾淨的ubuntu 9.04

step 1:安裝額外的套件,有些名字不太對,自已改一下


build-essential (gcc glibc)
bison (binutils and gcc )
flex (binutils and gcc)
texinfo (makeinfo
libncurses5-dev ( termcap)
mpfr-dev (gcc build)
gmp-dev (gcc build)

step 2 : 下載source package,解壓縮到目錄
binutils-2.19.1
gcc-4.4.0
newlib-1.17.0
gdb-6.8

step 3 : 設定編譯環境
TARGET_DIR 和 LIB_SRC請依照你安裝位置和源始碼放位置修改

export TARGET_DIR="/usr/local/gnuarm"
export LIB_SRC="/home/maxkerr/gnuarm/newlib-1.14.0"
export MY_CONFIG="--target=arm-elf --prefix=$TARGET_DIR --enable-interwork --enable-multilib"
export GCC_CONFIG="--target=arm-elf --prefix=$TARGET_DIR --enable-interwork --enable-multilib --enable-languages=c,c++ --with-newlib --with-headers=$LIB_SRC/newlib/libc/include"
export PATH="$PATH:$TARGET_DIR/bin"

step 4 : 編譯 binutils
套用patch,一個debug function format error

cd binutils-2.19.1
mkdir build;cd build
../configure $MY_CONFIG
sudo make -j 4 all install

step 5 : 編譯 gcc part 1

cd gcc-4.4.0
mkdir build;cd build
../configure $GCC_CONFIG
sudo make all-gcc install-gcc

step 6 : 編譯 newlib

cd newlib-0.17.0
mkdir build;cd build
../configure $MY_CONFIG
make all
sudo -c
export PATH="$PATH:$TARGET_DIR/bin" (為了找到arm-elf-cc)
make install

step 7 : 編譯 gcc part 2

cd gcc-4.4.0/build
sudo make all install

step 8 : 編譯 gdb
套用修正 p1, p2, p3, p4, p5, p6,

cd gdb-6.8
mkdir build;cd build
../configure $MY_CONFIG
sudo make all install

step 9 : 設定運行環境
把 :/usr/local/gnuarm/bin 加到 /etc/environment 中 PATH 最後一個 " 之前,例如這樣:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/gnuarm/bin"

step 10 : 測試

arm-elf-cc hello.c
arm-elf-run a.out

COMMENT:
AUTHOR: 雞尾
DATE: 04/17/2010 12:32:51 AM
IP: 140.114.88.243
EMAIL:
URL:
你好 參考您的例子 自行再動手編譯 但卻在編譯 gcc-4.4.0 時翻生錯誤 在UBUNTU 9.04 &9.10 都是如此 想請問您當初是怎麼編譯過得呢? 還有其他的修正檔需要使用嗎 ? 感謝您的指導 謝謝

版主回覆:(05/06/2009 01:40:28 AM)

我久遠的印像中gcc 的部份是不用額外的patch,有error message 嗎?
寄個mail 來如何...:P cmchao@gmail.com,不過話說gcc 4.5 都release 要不要幫忙試試寫篇心得文...:P

← 後備軍人教育召集 211205 號(part II) 2009-01-01 干卓萬卓社出武界 →