UBUNTU 12.04下傻瓜式簡單安裝arm-linux-gcc等gnu arm toolchain交叉編譯工具
歡迎轉載,轉載時請保留作者資訊,謝謝。
1. 驗證無誤的工具鏈安裝(能正常編譯linux,busybox等):
可以去這個地址下載工具鏈,是作者上傳的,要2分,當是辛苦分了,要免費的可以去min2440官網下載,地址我在下面也貼出來了。
CSDN下載連結:http://download.csdn.net/detail/xiayulewa/8615245
免費版的:http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.4.3-20100728.tar.gz
使用方法:
解壓到某個資料夾(目錄),如/usr/local/arm-cross-tool/下,再新增環境變數就OK了,如在/etc/profile檔案後新增:
#arm-linux-gcc
export PATH=$PATH:/usr/local/arm-cross-tool/friendly/toolschain/4.4.3/bin, 交叉工具就可以用了(當然在shell中需要source /etc/profile).
eg: arm-linux-gcc -Wall arm_main.c
2. 下面官方原版安裝,下面的文章是之前寫的,那時並沒有完全驗證,所以實際使用會有些問題,編譯linux核心沒問題,但是編譯busybox時會因缺少某些庫出錯,當然可以自己去完善工具鏈,但是那就太麻煩了,所以下面的文章僅供閱讀,實用性不大了。
如果是ubuntu 12.04,輸入:
sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded ;sudo apt-get update ; sudo apt-get install gcc-arm-none-eabi;
cd /usr/bin
ls | gawk '{if(match($0, "(arm-none-eabi-)(.*)", arr)){system("sudo ln " arr[1] arr[2] " arm-linux-"arr[2])}}';
arm-linux-gcc等工具鏈就安裝好了,如果你是實用主義者,那就直接跳到華麗的分割線後去吧,下面的東西可以跳過。
按照其步驟安裝就是了:我在ubunt 12.04安裝成功的,其它版本沒有試過,官網說支援:Ubuntu 10.04/12.04/13.04 32 and 64 bit。
Step1: Inside Ubuntu, open a terminal and input
"sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded"
Step2: Continue to input
"sudo apt-get update"
Step3: Continue to input to install toolchain
"sudo apt-get install gcc-arm-none-eabi"
簡單翻譯就是:
1. 開啟terminal終端:為新增源, 輸入:
sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
2:輸入:sudo apt-get update
3: 輸入: sudo apt-get install gcc-arm-none-eabi
如果還想更偷懶,就把上面三條命令合在一起寫了:
sudo
add-apt-repository ppa:terry.guo/gcc-arm-embedded && sudo apt-get update && sudo apt-get install
gcc-arm-none-eabi
-----------------------------------------------------------------------------------
---------------華麗的分割線--------------------------------------------------------
-----------------------------------------------------------------------------------
這樣就安裝好了,工具鏈路徑在/usr/bin/目錄下,具體可以用 ls | grep arm檢視;
按照最開始的方法應該有arm-linux-gcc等了,如果不會awk,那就老實手動修改連結。
cd /usr/bin
sudo ln arm-none-eabi-gcc arm-linux-gcc
sudo ln arm-none-eabi-ar arm-linux-ar
.....
測試: 建立test.c檔案,內容
#include <stdio.h>
int main(void)
{
return 0;
}
編譯: arm-linux-gcc test.c
出錯了?安裝有問題?
arm-none-eabi-gcc --specs=rdimon.specs test.c
成功。
優點:缺少的依賴包ubuntu會自動幫忙下載,不用手動操作,工具是用來用的,如果花了太多時間在工具鏈的安裝上,那麼得不償失,我之前就走了很多彎路,所以寫了這篇文章,按照文中方法可以非常快速的安裝交叉編譯工具, 歡迎轉載,讓更多的人免於交叉環境的安裝之苦。