????????交叉编译是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。
编译工具链下载:
(1) ARM提供:Arm GNU Toolchain Downloads – Arm Developer
(2)Linaro公司平台下载:https://www.linaro.org/downloads/
(3)自己制作
交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi]
arch- 体系架构,如ARM,MIPS等。
vendor- 工具链提供商,可以是none、unknow或者直接省略。
os- 目标操作系统。none表示没有操作系统的,不支持那些跟操作系统关系密切的函数,linux,表示编译出来的程序可以运行在linux上。
eabi- 嵌入式应用二进制接口
gnueabi和gnueabihf的区别(硬浮点、软浮点)
arm-none-eabi-gcc:用于编译 ARM 架构的裸机系统