下载
本文安装的交叉编译器是 arm-linux-gcc4.4.3 32位的,其他版本安装类似。
友善之臂官网下载地址 :http://www.arm9.net/download.asp
喜欢网盘下载的朋友可以使用 [https://pan.baidu.com/s/1bSNel0a13lJsn9fxOT7gZQ 提取码: u3yd] 进行安装。
安装
如果之前安装过旧版本的,可以考虑删除旧的版本在进行安装,如果不知道有没有安装过,就不管了。
下载好后进入 Ubuntu20.04 进行解压。
tar -zxvf arm-linux-gcc-4.4.3-20100728.tar.gz
此时当前目录下解压没错误的话会多个 opt 文件夹, 大致目录结构如下:
.
└── FriendlyARM└── toolschain└── 4.4.3├── arm-none-linux-gnueabi├── bin ├── include ├── lib ├── libexec ├── share
移动/复制 FriendlyARM 目录到 /usr/local/bin/
目录下:
cd opt
sudo mv FriendlyARM /usr/local/bin/
接下来添加环境变量即可。
vim ~/.zshrc
# 如果用的bash就是.bashrc
# 在文件末尾添加
export PATH=$PATH:/usr/local/bin/FriendlyARM/toolschain/4.4.3/bin
source ~/.zshrc
测试是否安装成功:
arm-linux-gcc -v
# 如果出现如下信息即成功
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/configure --build=i386-build_redhat-linux-gnu --host=i386-build_redhat-linux-gnu --target=arm-none-linux-gnueabi --prefix=/opt/FriendlyARM/toolschain/4.4.3 --with-sysroot=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --enable-languages=c,c++ --disable-multilib --with-arch=armv4t --with-cpu=arm920t --with-tune=arm920t --with-float=soft --with-pkgversion=ctng-1.6.1 --disable-sjlj-exceptions --enable-__cxa_atexit --with-gmp=/opt/FriendlyARM/toolschain/4.4.3 --with-mpfr=/opt/FriendlyARM/toolschain/4.4.3 --with-ppl=/opt/FriendlyARM/toolschain/4.4.3 --with-cloog=/opt/FriendlyARM/toolschain/4.4.3 --with-mpc=/opt/FriendlyARM/toolschain/4.4.3 --with-local-prefix=/opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi//sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace
Thread model: posix
gcc version 4.4.3 (ctng-1.6.1)
安装出错解决办法
输入 arm-linux-gcc -v
如果出现如下报错信息:
arm-linux-gcc -v
/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: exec: /FriendlyARM/toolschain/4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found
因为在64位Linux系统下无法兼容32位交叉编译器,解决办法:
sudo apt-get install libc6-i386
应该就没问题了。
总结
编译方法跟 gcc
一样的,可以参考我的这个博客,简简单单学会写makefile
这个安装还是挺简单的。