交叉编译
交叉编译是指在主机平台上生成目标平台上的可执行代码。
参与编译和运行的机器根据其角色可以分成以下三类
- 构建(build)系统:
生成编译器可执行程序
的计算机系统。(生成编译器的电脑) - 主机(host)系统:
运行编译器可执行程序,编译链接应用程序
的计算机系统。(生成应用程序的电脑) - 目标(target)系统:
运行应用程序
的计算机系统。(执行应用程序的电脑)
根据 build/host/target 的不同组合我们可以得到如下的编译方式分类
- 本地(native)编译:build == host == target
- 交叉(cross)编译: build == host != target