下载
本文安装的交叉编译器是 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
这个安装还是挺简单的。
 
                     
                     
                        
                        