跳转至

交叉编译

有时候,我们在开发中会遇到这些情况:

  • 手头暂时只有 Windows 机器可以用,但是希望编译出来的程序能在 Linux 上运行
  • 手头暂时只有 AMD64 指令集的机器,但是希望编译出来的程序能在 ARM 指令集机器上运行
  • 或者上面两种情况同时发生了
  • 或者我们有对应的机器,但是由于种种原因无法在上面编译,比如我们有一块单片机

这时候我们就需要进行交叉编译(Cross Compilation)了。交叉编译的原理很简单,指令集不一样?那就让编译器输出对应指令集的汇编,然后用对应指令集的汇编器汇编就好了。操作系统不一样?那就让汇编器以及链接器输出的二进制文件符合操作系统的要求就好了。


最后更新: 2021-08-12 21:34:11
本页作者: Howard Lau