1. 将交叉编译工具链压缩包拷贝至Ubuntu主机的用户主目录下(或其他任意目录),然后进入该目录使用下面的命令对该压缩包进行解压。
[email protected]:~$ tar –xvf gcc-4.6.4.tar.xz
2. 解压完成后,进入到相应的目录获取绝对路径。
[email protected]:~$ cd gcc-4.6.4/bin/
[email protected]:~$ pwd
/home/linux/gcc-4.6.4/bin
3. 编辑.bashrc文件,在文件末尾加入相应的路径。
$ sudo vim /home/linux/.bashrc
export PATH=$PATH:/home/yxl/gcc-4.6.4/bin/
4. 使用source命令,使配置生效。
[email protected]:~$ source .bashrc
5. 使用下面的命令确定交叉编译工具链安装成功,如果Ubuntu是64位或者16.04及以上版本,可能会报错,请看下一个条操作。
$ arm-none-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-none-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/home/farsight/gcc-4.6.4/bin/../libexec/gcc/arm-arm1176jzfssf-linux-gnueabi/4.6.4/lto-wrapper
Target: arm-arm1176jzfssf-linux-gnueabi
Configured with: /work/builddir/src/gcc-4.6.4/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-arm1176jzfssf-linux-gnueabi --prefix=/opt/TuxamitoSoftToolchains/arm-arm1176jzfssf-linux-gnueabi/gcc-4.6.4 --with-sysroot=/opt/TuxamitoSoftToolchains/arm-arm1176jzfssf-linux-gnueabi/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/sysroot --enable-languages=c,c++ --with-arch=armv6zk --with-cpu=arm1176jzf-s --with-tune=arm1176jzf-s --with-fpu=vfp --with-float=softfp --with-pkgversion='crosstool-NG hg+default-2685dfa9de14 - tc0002' --disable-sjlj-exceptions --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --with-gmp=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-mpfr=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-mpc=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-ppl=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-cloog=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-libelf=/work/builddir/arm-arm1176jzfssf-linux-gnueabi/buildtools --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-target-optspace --without-long-double-128 --disable-nls --disable-multilib --with-local-prefix=/opt/TuxamitoSoftToolchains/arm-arm1176jzfssf-linux-gnueabi/gcc-4.6.4/arm-arm1176jzfssf-linux-gnueabi/sysroot --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.6.4 (crosstool-NG hg+default-2685dfa9de14 - tc0002)
6. 我的Ubuntu18.04报以下错误。
[email protected]:~$ arm-none-linux-gnueabi-gcc -v
bash: /home/yxl/gcc-4.6.4/bin/arm-none-linux-gnueabi-gcc: No such file or directory
解决方法:
[email protected]:~$ sudo apt-get install lib32z1 lib32ncurses5
7. 如果之前交叉编译工具链可以用,但是在编译内核的时候不可以用,报以下错误
解决方法:
[email protected]:~$source /etc/profile