什么是交叉编译?
Cross-compilation是在称为主机的不同系统上为一个计算机系统(通常称为目标)编译代码的行为。
这是一种非常有用的技术,例如当目标系统太小而无法托管编译器和所有相关文件时。
常见的例子包括许多嵌入式系统,但也包括典型的游戏机。
交叉编译器将源代码从一个体系结构编译到另一个体系结构。
例如:hello.c
gcc hello.c
(gcc 是 x86 架构的编译器。)
arm-cortexa8-linux-gnueabihf-gcc hello.c
(arm-...-gcc 是 arm 体系结构的编译器。)您正在主机 PC 上为目标板(例如 rpi,beaglebone,wega 板)编译。在此示例中,arm-cortexa8-linux-gnueabihf-gcc
称为“交叉编译器”。
此过程称为交叉编译。
有关详细信息,请参阅链接cross compilation
“交叉编译”是指在 Linux 盒子上编译源代码,因此意图在 MAC 或 Windows 盒子上运行它。这通常是使用交叉编译插件来完成的,该插件可以从网络上的各种 Web 服务器上轻松获得。如果要在其 Linux 盒子上安装一个交叉编译插件,该插件旨在为 Windows 盒子进行编译。然后,他们可以为 Linux / * NIX 盒子进行编译,也可以选择编译并链接一个 Windows 就绪的 MAC。
你有一个特定的项目,你想应用交叉编译的方法?
从严格意义上讲,它是在一个主机上编译代码,旨在在另一个主机上运行。
最常见的是,它用于与主机不二进制兼容的体系结构的编译-例如,在 CISC CPU 平台上构建 RISC 二进制文件,或在 32 位系统上构建 64 位二进制文件。或者,例如,在基于 Intel PC 的 OS 上构建旨在在嵌入式设备上运行的固件(可能使用 ARM CPU 体系结构)。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(32条)