用 GCC 编译器进行代码编译,但是 Ubuntu 自带的 gcc 编译器是针对 X86 架构的!而我们现在要编译的是 ARM 架构的代码,所以我们需要一个在 X86 架构的 PC 上运行,可以编译 ARM 架构代码的 GCC 编译器,这个编译器就叫做交叉编译器,总结一下交叉编译器就是:
Arm出品:
gcc-arm- 9.2-2019.12-x86_64-arm-none-linux-gnueabihf
编译指令:
arm-none-linux-gnueabihf-gcc
例如:
arm-none-linux-gnueabihf-gcc main.c -o main
arm 表示是编译 arm 架构代码的编译器。
none 表示厂商,一般半导体厂商会修改通用的交叉编译器,此处就是半导体厂商的名字,ARM 自己做的交叉编译这里为 none,表示没有厂商。
linux 表示运行在 linux 环境下。
gnueabihf 表示嵌入式二进制接口,后面的 hf 是 hard float 的缩写,也就是硬件浮点,说明此交叉编译工具链支持硬件浮点。
5、gcc 表示是 gcc 工具。