通用交叉編譯工具鏈

除了板卡廠商提供的交叉編譯工具鏈外,還存在通用的交叉編譯工具鏈。經常使用的有:arm-linux-gnueabihf-gcc和arm-none-linux-gnueabi-gcc。css

Ubuntu命令安裝

$ sudo apt-get install g++-5-arm-linux-gnueabihf g++-5-arm-linux-gnueabihf
$ sudo update-alternatives --install /usr/bin/arm-linux-gnueabihf-gcc arm-linux-gnueabihf-gcc /usr/bin/arm-linux-gnueabihf-gcc-5 100 --slave /usr/bin/arm-linux-gnueabihf-g++ arm-linux-gnueabihf-g++ /usr/bin/arm-linux-gnueabihf-g++-5
## 更新軟鏈接

arm-linux-gnueabihf-gcc二進制安裝

arm-linux-gnueabihf-gcc是由 Linaro 公司基於GCC推出的的ARM交叉編譯工具。可用於交叉編譯ARM系統中全部環節的代碼,包括裸機程序、u-boot、Linux kernel、filesystem和App應用程序。html

arm-linux-gneabihf-gcc 與 CodeSourcery 的 arm-none-linux-gnueabi-gcc 類 似,均可以用來編譯基於ARM平臺全部環節代碼,CodeSourcery 的交叉編譯工具發佈較早,從2005年開始一直到如今。linux

Linaro 則是由ARM、飛思卡爾、IBM、Samsung、ST-Ericsson和TI等廠商聯合,爲開發不一樣半導體公司系統單芯片(SoC)平臺的共通軟件的 一個非盈利公司。c++

Linaro於2010年成立,並於當年11月發佈初版ARM Cortex-A 爲核心的 SoC 進行效能優化的軟件工具。ubuntu

1. 下載軟件包bash

  從linaro的網站下載預編譯二進制包,地址:https://launchpad.net/linaro-toolchain-binaries/trunk/2013.10工具

  注意選擇的版本哦,咱們要使用linux下的哦。選擇這個:post

  gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux.tar.bz2測試

2. 解壓優化

  解壓gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux.tar.xz  到 ~/arm-cross-toolchain/目錄下

3. 設置環境變量

  ~$ vi .bashrc

    在最後添加以下 2 行:

    PATH=$PATH:/home/lxl/arm-cross-toolchain/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin

    export PATH

  請注意,第一行的$PATH後面是英文冒號,而冒號後面是你的cross-toolchain的可執行文件目錄(bin目錄)的絕對路徑。 這兩句的意思就是將cross-toolchain的可執行文件路徑加入系統環境變量PATH中。

4. 使環境變量 生效

  ~$ source .bashrc

5. 測試

  ~$ arm-linux-gnueabihf-gcc -v

  報錯:arm-linux-gnueabihf-gcc: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

  緣由:64位的系統,缺乏 lib32stdc++6這個包

  解決:~$ sudo apt-get install lib32stdc++6

 

參考:

1. ubuntu下安裝交叉編譯工具鏈

相關文章
相關標籤/搜索