0

我已经为 linux VM 中的嵌入式 linux 设备 (gumstix) 完成了所有开发工作,我想将代码库移动到我的主机 Linux 计算机上。交叉编译器是在我继承代码库之前设置的,所以我不确定编译器是如何设置的。我有一些关于如何设置交叉编译器的问题。

VM 上的编译器是 arm-linux-gnueabihf-gcc。

  1. 交叉编译器内核是特定的吗?(使用 linux 内核 3.17)
  2. 是交叉编译器目标设备特定的;即我需要使用gumstix 编译器还是arm-linux-gnueabihf-gcc 是否令人满意。这个编译器是否需要手动配置。
  3. 有没有办法查看/导入工作 VM 编译器的配置设置?
  4. arm-linux-gnueabihf-gcc 是否使用与 gcc 编译器相同的标准库源代码?
  5. 我已经看到了在 web 上设置交叉编译器的不同方法。我在哪里可以找到设置交叉编译器的综合信息(不仅仅是操作方法,还解释了原因)。

谢谢

4

1 回答 1

0

交叉编译器不是内核特定的,也不是目标设备特定的。它特定于您所针对的 SoC 或处理器的体系结构。因此,如果您当前的编译器是 arm-linux-gnueabihf-gcc,则意味着它可以为硬件中支持浮点的 ARM32 处理器编译代码。根据您的主机 Linux 系统,您可以使用包管理器安装类似的编译器,也可以从此处下载。

不同的人可能会推荐不同的方法,以及特定方法是容易还是困难。无论如何,我倾向于建议使用 Yocto/Openembedded 或 Buildroot 等构建完整的目标映像并生成用于开发的 SDK。

不确定您所说的 Q4 到底是什么意思。

于 2019-02-01T05:10:28.540 回答