今天花了點時間在RedHat 5.0上安裝了一個arm-linux交叉編譯器。裝的過程中出現過幾個問題,經過查詢網上的資料。現在就總結一下正確的安裝方法。
首先我用的是天嵌自帶的交叉編譯器EABI-4.3.3_EmbedSky_20100610.tar.bz2,
1.首先建一個存放交叉編譯器的目錄,我建的目錄的絕對路徑是:/opt/TQ (TQ就是我建的目錄)
2.解壓EABI-4.3.3_EmbedSky_20100610.tar.bz2,
tar xjvf EABI-4.3.3_EmbedSky_20100610.tar.bz2
該文件解壓後,就會在TQ這個目錄中生成兩個目錄:opt,usr
3. 添加環境變量 在/etc/profile 中 添加
# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /opt/TQ/opt/EmbedSky/4.3.3/bin/
fi
添加完後 source /etc/profile 使他生效
4. 在控制台執行以下命令:
cp /opt/TQ/opt/EmbedSky/4.3.3/bin /usr/local/arm
總結:第3步和第4步這兩步少了一步就會出現以下錯誤:
arm-none-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
經驗:若在解壓時 用下面的命令:
tar xjvf EABI-4.3.3_EmbedSky_20100610.tar.bz2 -C/
就可以省去第四步
-C / :的意識是解壓到指定目錄,這裡指跟目錄,由於該壓縮包內部的目錄結構本身包含usr/local/arm,所以解壓到根目錄實際上就是把文件解壓到/usr/local/arm文件夾下。