gpt4 book ai didi

c++ - 如何将 Windows 中的 CodeBlocks MingW 编译到 Ubuntu 或 Centos

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:56:21 24 4
gpt4 key购买 nike

有没有办法在 Windows 中使用 MingWCodeBlocks 进行编译,以便它们可以在 Ubuntu 或 Centos 发行版中使用?

我已经尝试使用 GNU GCC 选项进行编译,然后在 obj/Release/ 文件夹下得到扩展名为 .o 的输出文件。

当我运行时,我在我的 Vagrant Ubuntu 机器下遇到这个错误:

-bash: ./main.o: 无法执行二进制文件

如何编译它以便在我的 Linux 机器上运行?

最佳答案

您试图完成的技术术语是交叉编译。为此,您需要使用 GCC 源构建特定的交叉编译器。如果您仍想保留 MinGW,有一个页面解释了创建 ARM 交叉编译器所需的步骤:http://www.mingw.org/wiki/HostedCrossCompilerHOWTO . (你必须修改目标)

GCC 支持的目标列表:

armv5te-android-gcc armv5te-linux-rvct armv5te-linux-gcc armv5te-none-rvct armv6-darwin-gcc armv6-linux-rvct armv6-linux-gcc armv6-none-rvct armv7-android-gcc armv7-darwin-gcc armv7-linux-rvct armv7-linux-gcc armv7-none-rvct mips32-linux-gcc ppc32-darwin8-gcc ppc32-darwin9-gcc ppc32-linux-gcc ppc64-darwin8-gcc ppc64-darwin9-gcc ppc64-linux-gcc sparc-solaris-gcc x86-android-gcc x86-darwin8-gcc x86-darwin8-icc x86-darwin9-gcc x86-darwin9-icc x86-darwin10-gcc x86-darwin11-gcc x86-darwin12-gcc x86-linux-gcc x86-linux-icc x86-os2-gcc x86-solaris-gcc x86-win32-gcc x86-win32-vs7 x86-win32-vs8 x86-win32-vs9 x86_64-darwin9-gcc x86_64-darwin10-gcc x86_64-darwin11-gcc x86_64-darwin12-gcc x86_64-linux-gcc x86_64-linux-icc x86_64-solaris-gcc x86_64-win64-gcc x86_64-win64-vs8 x86_64-win64-vs9 universal-darwin8-gcc universal-darwin9-gcc universal-darwin10-gcc universal-darwin11-gcc universal-darwin12-gcc generic-gnu

只有一个重要警告:由于 Windows 不兼容 POSIX,我认为您不能使用 signalspthreads

最后,打起精神来,因为构建 cx-compiler 是一项乏味的任务(很多不明显的错误)。这就是专业开发人员为“​​即插即用”解决方案支付 $$$ 的原因。

编辑:this MXE project对你有用

关于c++ - 如何将 Windows 中的 CodeBlocks MingW 编译到 Ubuntu 或 Centos,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25666140/

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