交叉编译

交叉编译

交叉编译是指在主机平台上生成目标平台上的可执行代码。

参与编译和运行的机器根据其角色可以分成以下三类

  • 构建(build)系统:生成编译器可执行程序的计算机系统。(生成编译器的电脑)
  • 主机(host)系统:运行编译器可执行程序,编译链接应用程序的计算机系统。(生成应用程序的电脑)
  • 目标(target)系统:运行应用程序的计算机系统。(执行应用程序的电脑)

根据 build/host/target 的不同组合我们可以得到如下的编译方式分类

  • 本地(native)编译:build == host == target
  • 交叉(cross)编译: build == host != target