使用交叉编译器时如何确定要配置的主机值

奥梅尔·达根(Omer Dagan)

常见问题:如果使用交叉编译器,如何确定运行configure时应提供的“ --host”选项的值?

具体:我正在为arm64 arch使用交叉编译器。要使用的正确“ --host”值是多少?

维纳伊·休纳夏尔

如果使用交叉编译器,如何确定--host运行时应提供选项的值./configure

讨论工具链创建时,必须区分三台机器

  • 构建机,其中工具链构建。
  • 主机,其中,工具链将被执行。
  • 目标机器,其中由工具链创建二进制文件被执行。

工具链可能有四种常见的构建类型:

  • 本机构建,BUILD==HOST==TARGET
    用于为工作站构建普通的gcc。例如BUILD==HOST==TARGET==x86

  • 交叉构建,BUILD==HOST!=TARGET
    用于构建可在您的工作站上运行但为目标生成二进制文件的工具链。例如BUILD==HOST==x86 TARGET==arm

  • 跨原生构建,BUILD!=HOST==TARGET
    用于在目标上运行并为目标生成二进制文件的工具链。例如BUILD==x86 HOST==TARGET==ARM

  • 加拿大工具链,BUILD!=HOST!=TARGET
    用于构建ARCHITECTURE A的工具链在B上运行,并为C生成二进制文件。例如BUILD==x86 HOST==mac TARGET==arm

有了武装,这些基本知识就会浮出水面。

对于任何软件,请先运行 ./configure --help

主机类型:

--build=BUILD           configure for building on BUILD [BUILD=HOST]
--host=HOST             configure for HOST [guessed]
--target=TARGET         configure for TARGET [TARGET=HOST]

您将在上面找到,因此根据您要执行的操作,需要将其设置为交叉编译。如果所有选项均可用,则您要在手臂目标上执行,然后设置--host={your toolchain triplet} --target={your toolchain triplet}

例如,如果使用arm-none-linux-gnueabi-gcc,请设置--host=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi这将写入您的makefile。最后,生成的可执行文件将在目标上运行。为此--build将自动设置,无需担心。

对于某些软件包,只有两个选项可用i.e host and build这里是否设置host足以交叉编译

具体:我正在使用交叉编译器进行构建arm64--host使用的正确值是多少?

对于x86_64,--host={triplet}通常是给定的,因此我认为通过设置--host={triplet}您的工具链,同样适用于arm64 ,但我不确定。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用多个Linq2 ....上下文时,编译器如何确定要使用哪个提供程序?

来自分类Dev

编译器如何确定要调用的函数模板?

来自分类Dev

如何使用交叉编译器进行编译?

来自分类Dev

无法确定要使用的编译器-此Xcode安装中缺少抽象编译器规范

来自分类Dev

使用交叉编译器运行 Makefile 时出错

来自分类Dev

指针算术-编译器如何确定要增加的字节数?

来自分类Dev

如何在Scons中使用交叉编译器?

来自分类Dev

如何在Scons中使用交叉编译器?

来自分类Dev

与CMake交叉编译时如何确定主机操作系统?

来自分类Dev

QMAKE。交叉编译QT项目时如何确定主机平台和目标平台

来自分类Dev

qmake如何确定在Makefile中使用的编译器?

来自分类Dev

编译器如何确定使用哪个函数?

来自分类Dev

编译器如何确定何时可以安全使用RVO?

来自分类Dev

使用GCC交叉编译器时对printf的未定义引用

来自分类Dev

交叉编译器路径

来自分类Dev

构建GCC交叉编译器时,Binutils无法构建

来自分类Dev

如何在Ubuntu 18.04上安装交叉编译器?

来自分类Dev

使用pyximport时如何设置Cython编译器标志?

来自分类Dev

使用Jam时如何查看g ++编译器输出?

来自分类Dev

使用CMake GUI设置交叉编译器文件

来自分类Dev

我不能使用交叉编译器

来自分类Dev

使用编译器插件定义配置

来自分类Dev

使用编译器插件定义配置

来自分类Dev

当函数名称不带括号发送给cout时,编译器如何确定在运行时输出什么值?C ++

来自分类Dev

交叉编译时如何使用外部库?

来自分类Dev

使用cmake,如何确定每种构建类型的默认编译器标志?

来自分类Dev

编译器如何确定什么时候可以安全使用RVO?

来自分类Dev

编译器如何确定sml中的类型

来自分类Dev

编译器如何确定位域结构的大小?

Related 相关文章

  1. 1

    使用多个Linq2 ....上下文时,编译器如何确定要使用哪个提供程序?

  2. 2

    编译器如何确定要调用的函数模板?

  3. 3

    如何使用交叉编译器进行编译?

  4. 4

    无法确定要使用的编译器-此Xcode安装中缺少抽象编译器规范

  5. 5

    使用交叉编译器运行 Makefile 时出错

  6. 6

    指针算术-编译器如何确定要增加的字节数?

  7. 7

    如何在Scons中使用交叉编译器?

  8. 8

    如何在Scons中使用交叉编译器?

  9. 9

    与CMake交叉编译时如何确定主机操作系统?

  10. 10

    QMAKE。交叉编译QT项目时如何确定主机平台和目标平台

  11. 11

    qmake如何确定在Makefile中使用的编译器?

  12. 12

    编译器如何确定使用哪个函数?

  13. 13

    编译器如何确定何时可以安全使用RVO?

  14. 14

    使用GCC交叉编译器时对printf的未定义引用

  15. 15

    交叉编译器路径

  16. 16

    构建GCC交叉编译器时,Binutils无法构建

  17. 17

    如何在Ubuntu 18.04上安装交叉编译器?

  18. 18

    使用pyximport时如何设置Cython编译器标志?

  19. 19

    使用Jam时如何查看g ++编译器输出?

  20. 20

    使用CMake GUI设置交叉编译器文件

  21. 21

    我不能使用交叉编译器

  22. 22

    使用编译器插件定义配置

  23. 23

    使用编译器插件定义配置

  24. 24

    当函数名称不带括号发送给cout时,编译器如何确定在运行时输出什么值?C ++

  25. 25

    交叉编译时如何使用外部库?

  26. 26

    使用cmake,如何确定每种构建类型的默认编译器标志?

  27. 27

    编译器如何确定什么时候可以安全使用RVO?

  28. 28

    编译器如何确定sml中的类型

  29. 29

    编译器如何确定位域结构的大小?

热门标签

归档