1. 程式人生 > >linux 下安裝arm-linux-gnueabi交叉編譯器

linux 下安裝arm-linux-gnueabi交叉編譯器

++ 支持 準備 shel osi 成功 collect 交叉編譯器 com

1,開發平臺

  虛擬機:vm12

  系統:ubuntu14.04 LTS 32位

2、準備ARM交叉編譯工具包

  編譯uboot和linux kernel都需要ARM交叉工具鏈支持,這裏使用Linaro提供的交叉編譯工具。下載地址為:http://releases.linaro.org/

  註意區分32位與64位:::getconf LONG_BIT 查詢

  64位下載地址:http://releases.linaro.org/components/toolchain/binaries/6.1-2016.08/arm-linux-gnueabi/gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi.tar.xz

  32位下載地址:http://releases.linaro.org/components/toolchain/binaries/6.1-2016.08/arm-linux-gnueabi/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi.tar.xz

3、安裝步驟

   1)在/usr/local/文件夾下建立名為ARM-toolchain的文件夾

      sudo mkdir /usr/local/ARM-toolchain

   2)將下載的壓縮包拷貝到ARM-toolchain

   3)解壓

      xz -d gcc* .tar.xz

      tar xvf gcc*.tar

   4)配置環境變量

      vi /etc/bash.bashrc

      在末尾加入:export PATH="$PATH:/usr/local/ARM-toolchian/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi/bin"

   5)生效

      source /etc/bash.bashrc

   6)檢查環境變量

      echo $PATH

    成功會出現:

root@ubuntu:/usr/local/ARM-toolchian/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/ARM-toolchain/gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi/bin:/usr/local/ARM-toolchian/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi/bin

   7) 檢查成功

root@ubuntu:/usr/local/ARM-toolchian/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi# arm-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/usr/local/ARM-toolchian/gcc-linaro-6.1.1-2016.08-i686_arm-linux-gnueabi/bin/../libexec/gcc/arm-linux-gnueabi/6.1.1/lto-wrapper
Target: arm-linux-gnueabi
Configured with: /home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/snapshots/gcc-linaro-6.1-2016.08/configure SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/builds/destdir/i686-pc-linux-gnu --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/builds/destdir/i686-pc-linux-gnu --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/builds/destdir/i686-pc-linux-gnu --with-gnu-as --with-gnu-ld --disable-libstdcxx-pch --disable-libmudflap --with-cloog=no --with-ppl=no --with-isl=no --disable-nls --enable-c99 --enable-gnu-indirect-function --with-tune=cortex-a9 --with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=softfp --with-mode=thumb --disable-multilib --enable-multiarch --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/sysroots/arm-linux-gnueabi --enable-lto --enable-linker-build-id --enable-long-long --enable-shared --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/builds/destdir/i686-pc-linux-gnu/arm-linux-gnueabi/libc --enable-languages=c,c++,fortran,lto --enable-checking=release --disable-bootstrap --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-linux-gnueabi --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-i386-tcwg/target/arm-linux-gnueabi/_build/builds/destdir/i686-pc-linux-gnu
Thread model: posix
gcc version 6.1.1 20160711 (Linaro GCC 6.1-2016.08) 

linux 下安裝arm-linux-gnueabi交叉編譯器