配置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
下載地址:
本檔案為天嵌公司的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
出現以下版本資訊則為安裝好了~
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