Ubuntu安装交叉编译工具

时间:2024-04-15 10:59:41

两种安装方式

1.从网站下载直接编译工具

一般在linaro或GNU的网站下载

http://releases.linaro.org/components/toolchain/binaries/

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads

根据自身需求选择编译器下载,类似 gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu.tar.xz 这种文件名

gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu.tar.xz
编译器- 工具厂商linaro- 版本6.5.0 - 日期 - 使用平台x86 _目标平台arm64
gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf.tar.xz
编译器- 工具厂商linaro- 版本6.5.0 - 日期 - 使用平台x86 _目标平台arm32硬浮点
gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu.tar.xz
编译器- arm- 版本10.2 - 日期 - 使用平台x86 _目标平台arm64

将工具解压,一般放至/usr/local/目录下。

设置环境变量,可以设置在/etc/profile或用户目录下的.bashrc文件

#根据自己放置的路径,在文件最后添加,路径为工具文件夹下一级的bin目录,重新登陆后生效
export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/

2.在命令行安装

#不指定版本安装gcc和g++交叉编译工具
sudo apt install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu

#指定安装最新的6.xx版本,应该是6.5.0,要安装中间小版本只能去下载编译器的压缩包
sudo apt install gcc-6-aarch64-linux-gnu g++-6-aarch64-linux-gnu

ubuntu编译器切换版本

如果是使用apt或dpkg安装的软件,可用update-alternatives切换版本

#将需要切换的编译器注册候选,并设置优先级(数字越大优先级越高)
--install <link> <name> <path> <priority>
    [--slave <link> <name> <path>] ...

#使用--slave将g++和gcc绑定至一块,改动gcc时g++的版本也会随之改变
sudo update-alternatives --install /usr/bin/aarch64-linux-gnu-gcc aarch64-gcc /usr/bin/aarch64-linux-gnu-gcc-7 50 --slave /usr/bin/aarch64-linux-gnu-g++ aarch64-g++ /usr/bin/aarch64-linux-gnu-g++-7
sudo update-alternatives --install /usr/bin/aarch64-linux-gnu-gcc aarch64-gcc /usr/bin/aarch64-linux-gnu-gcc-6 30 --slave /usr/bin/aarch64-linux-gnu-g++ aarch64-g++ /usr/bin/aarch64-linux-gnu-g++-6

#查看、切换当前使用的版本,设置后重启后仍然生效
#会弹出注册过<name>的软件
sudo update-alternatives --config aarch64-gcc

如果是下载的编译器压缩包解压的

修改环境变量的路径