1. 程式人生 > >配置arm-linux-gcc教程以及可能遇到的問題

配置arm-linux-gcc教程以及可能遇到的問題

=================================================================

內容出自網際網路及自行新增改良,已經過測試。
測試環境:Ubuntu16.04 x86/x64、Ubuntu17.04x64

arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
下載地址: http://www.veryarm.com/arm-none-linux-gnueabi-gcc
linux壓解版

EABI-4.3.3_EmbedSky_20091210.tar.bz2
下載地址:

http://download.csdn.net/detail/airenmc/9770585
本檔案為天嵌公司的EABI-4.3.3_EmbedSky_20091210.tar.bz2

=================================================================

arm-none-linux-gnueabi 版本

1.把檔案放到/usr/local
2.解壓

$ sudo tar -jxvf arm-linux-2014.05.tar.bz2

3.進入目錄

$ cd  arm-2014.05/bin

檢視當前目錄

$ pwd

4.

$ sudo gedit /etc/profile

最後一行新增
(格式:export PATH = $PATH:你的bin目錄)
例如我的:

export PATH = $PATH:/usr/local/arm-2014.05/bin

儲存退出。
執行命令:

$ source /etc/profile
$ arm-none-linux-gnueabi-gcc -v

出現以下版本資訊則為安裝好了~
arm-none-linux-gnueabi-gcc -v

EABI-4.3.3_EmbedSky_20091210.tar.bz2 版本

EABI-4.3.3_EmbedSky_20091210.tar.bz2內含opt、usr/local兩個資料夾
opt中為arm相關編譯檔案

1.解壓 EABI-4.3.3_EmbedSky_20091210.tar.bz2

#tar -jxvf EABI-4.3.3_EmbedSky_20091210.tar.bz2

到根目錄

2.建立路徑/usr/local/arm-gcc(選改名),並把opt裡的檔案以及/usr/local中sbin資料夾放進該路徑中
(交叉編譯程式都在/usr/local/arm-gcc/EmbedSky/4.3.3/bin中)

3.修改/etc/profile檔案:

#sudo vim /etc/profile

增加路徑設定,在末尾新增如下,儲存/etc/profile檔案:

export PATH$PATH:/usr/local/arm-gcc/EmbedSky/4.3.3/bin

4:立即使新的環境變數生效,不用重啟電腦:

# source /etc/profile

5: 檢查是否將路徑加入到PATH:

  # echo $PATH

  顯示的內容中有/usr/local/arm/bin,說明已經將交叉編譯器的路徑加入PATH。至此,交叉編譯環境安裝完成。

6.測試是否安裝成功

# arm-linux-gcc -v

補充:

1.補充庫:

arm-linux-gcc -v

會出現下面的錯誤提示:

1. /home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec:
2. /home/song/software/opt/FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found

說是出現這種問題的原因是由於Ubuntu12.04用的是64位的,解決方法就是使用命令:
sudo apt-get install ia32-libs
或者
sudo apt-get install libc6:i386
裝一些32位的庫

2.arm-linux-gcc 其實是arm-none-linux-gnueabi-gcc的軟連線

習慣用arm-linux-gcc的可以在環境變數中(對於我來說也就是/usr/local/arm-2014.05/bin)下建立軟連線

# sudo ln -s arm-none-linux-gnueabi-gcc arm-linux-gcc

測試成功即可:

# arm-linux-gcc -v