Linux系统上下载和安装ARM交叉工具链的三种方法。
方法一:通过包管理器安装(适用于Debian/Ubuntu)
-
更新包列表
sudo apt update
-
安装ARM交叉工具链
- 针对ARM 32位架构(如Cortex-A系列):
sudo apt install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf
- 针对ARM裸机开发(如Cortex-M系列):
sudo apt install gcc-arm-none-eabi g++-arm-none-eabi
- 针对ARM 64位架构(AArch64):
sudo apt install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
- 针对ARM 32位架构(如Cortex-A系列):
-
验证安装
arm-linux-gnueabihf-gcc --version # 32位工具链 arm-none-eabi-gcc --version # 裸机工具链 aarch64-linux-gnu-gcc --version # 64位工具链
方法二:手动下载预编译工具链
-
访问ARM官方工具链页面
打开浏览器,访问 ARM GNU Toolchain下载页面。https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
-
选择工具链版本
- 根据目标架构选择:
- AArch32(32位ARM):选择
ARM Cortex-A & Cortex-R
。 - AArch64(64位ARM):选择
ARM Cortex-A
。 - 裸机开发(如单片机):选择
Bare-metal target
。
- AArch32(32位ARM):选择
- 根据目标架构选择:
-
下载工具链
- 例如,下载64位Linux宿主机的AArch32工具链:
wget https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi.tar.xz
- 例如,下载64位Linux宿主机的AArch32工具链:
-
解压工具链
tar -xf arm-gnu-toolchain-*.tar.xz -C ~/ # 解压到用户目录
-
配置环境变量
- 编辑
~/.bashrc
或~/.bash_profile
:echo 'export PATH="$HOME/arm-gnu-toolchain-13.2.rel1-x86_64-arm-none-eabi/bin:$PATH"' >> ~/.bashrc
- 使配置生效:
source ~/.bashrc
- 编辑
-
验证安装
arm-none-eabi-gcc --version
方法三:使用Linaro工具链(适用于ARM Linux开发)
-
访问Linaro下载页面
访问 Linaro Releases。 -
选择版本和架构
- 例如,选择
aarch64-linux-gnu
和最新版本。
https://releases.linaro.org/components/toolchain/binaries/
- 例如,选择
-
下载并解压
wget https://releases.linaro.org/components/toolchain/binaries/latest-7/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz tar -xf gcc-linaro-*.tar.xz -C ~/
-
配置环境变量
echo 'export PATH="$HOME/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin:$PATH"' >> ~/.bashrc source ~/.bashrc
-
验证安装
aarch64-linux-gnu-gcc --version
常见问题
- 权限问题:如果解压到系统目录(如
/opt
),可能需要sudo
。 - 依赖缺失:若运行时报错,尝试安装依赖库:
sudo apt install libncurses5 libstdc++6