Canadian Cross
10 months ago
- #cross-platform
- #software-development
- #compilers
- 交叉编译器生成的执行代码与其运行平台不同,例如在PC上为Android平台编译程序。
- 适用于资源有限的嵌入式系统、多目标平台、服务器集群以及新平台的引导开发。
- 与源码到源码编译器不同,交叉编译器专注于跨平台的机器代码生成。
- 加拿大交叉编译技术通过三台机器级联构建(A→B→C)以提高效率。
- 早期案例包括UNIX(1969年)、ALGOL 68C(1979年)和为家用计算机开发的Aztec C(1980年代)。
- GCC支持交叉编译,但需要平台特定的binutils和部分C库(如newlib)。
- 微软C编译器从混合语言开发(1980年代)演变为.NET的跨平台能力。
- Free Pascal和Clang是原生支持交叉编译的工具,可面向多种架构/操作系统。
- Plan 9操作系统的工具链将所有编译视为与架构无关的过程。