gpt4 book ai didi

gcc - 在 Linux 主机上针对各种目标进行交叉编译

转载 作者:行者123 更新时间:2023-12-05 06:45:58 24 4
gpt4 key购买 nike

我在 Linux 开发主机上有一组或多或少可移植的 C/C++ 源代码,我希望能够:

  1. 为 32 位和 64 位 Linux 目标编译
  2. 针对 32 位和 64 位 Windows 目标进行交叉编译
  3. 针对 32 位和 64 位 Mac 目标进行交叉编译
  4. 而且,理想情况下,对其他仿真 DLL(如 cygwin1.dll、MinGW 等)没有任何运行时依赖性,但如果没有其他选择,我可以使用它们。如果我必须使用它们,我更愿意将它们的功能静态链接到我的代码。

所需的目标二进制文件是:

  1. 用于 Linux 和 Mac 目标的共享库 (.so),以及

  2. Windows 的 DLL。

我不知道如何从头开始构建交叉编译器(以及相关的工具链)。我听说预构建的交叉编译器工具链可用于各种主机和目标组合,但我不知道在哪里可以找到它们,甚至不知道如何使用它们而不会在以后遇到运行时崩溃/核心转储,因为指针模型的细微差别(LP64、LLP64 等)、指定错误或不充分的编译器开关、其他错误配置等。

到目前为止,我一直无法找到有关上述内容的相关且完整的信息,而且我设法找到的任何一点信息都零散地散落在各处,以至于我什至不确定是否我读过的所有内容都是完整的,甚至是正确的(完全适用于我的情况)。

我不是编译器专家,只是他们的普通用户。将不胜感激实现上述编译目标的信息。

最佳答案

我想在 Linux 上为 Mac OsX 交叉编译一个库,我正在考虑 imcross .该站点中的说明很简单,但是每次设置交叉编译环境时都必须修复很多东西,所以我不希望它会很简单。您可以在网站上查看该项目有一些限制,但这是我遇到的最好的。

现在对我来说不是优先事项(在执行此任务之前我还有其他事情要做)我还没有设置交叉环境。我将在几天内完成。

关于gcc - 在 Linux 主机上针对各种目标进行交叉编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20140704/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com