前言
由于目前使用的工具链不支持ARM Cortex-a76架构,故需要下载最新的交叉编译工具。
步骤
- 先去ARM官网下载gnu-toolchain交叉编译工具,官网链接developer.arm.com/tools-and-s…
我是下载的最新版本10.3,可以根据自己需要选择下载。由于我使用的编译主机环境是linux下的,所以选择Linux下的AARCH64和AARCH32的gnu-toolchain。
- 下载完成之后,使用tar -xvf xx.tar进行解压缩:
之后进入到xx/bin文件夹下就可以看到所有的工具了:
配置环境变量,方法有很多,在这列出其中一种:
进入/usr/bin文件夹下,执行:
sudo ln -s /home/xt/armtools/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-gcc-10.3.1 aarch64-none-linux-gnu-gcc
然后输入aarch64-none-linux-gnu-gcc -v就可以看到相应的版本号了:
3. 编译
使用命令aarch64-none-linux-gnu-gcc -mcpu=cortex-a76 hello.c -o hello对AARch64文件进行编译,无报错;
使用命令arm-none-linux-gnueabihf-gcc-10.3.1 -march=armv8.2-a hello.c -o h2对AARCH32文件进行编译,无报错。
检查文件类型:
结果符合预期!
参考
备注
查看软连接源头方法: ls -l