C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 使用g构建64位可执行文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在solaris 10 x86机器上构建了g 3.4.6.使用此g,我尝试使用-m64选项构建64位二进制文​​件

g++ -m64 test.cpp -o test.exe

我没有遇到任何问题.然后我将整个gcc安装目录复制到另一台solaris机器(相同的硬件和操作系统)(让我们称之为机器2).但是现在如果我试图构建64位二进制文​​件,我会收到以下错误

test.cpp:1: sorry,unimplemented: 64-bit mode not compiled in

但是,当我使用机器2上可用的另一个版本的g编译器(3.4.3)来构建64位二进制文​​件时,我没有得到任何错误.这让我很困惑

>如果这是g最初构建的问题那么为什么它在机器1上工作而不在机器2上?
>如果这是机器问题,那么为什么在机器2上,另一个版本的g编译器能够生成64位二进制文​​件?

我需要做什么再次构建编译器或关于机器配置,以便我能够使用g 3.4.6在机器2上构建64位二进制文​​件?

解决方法

我认为您可能需要配置gcc和binutils以具有以下选项:

--enable-multilib
--enable-targets=i686-pc-linux-gnu,x86_64-pc-linux-gnu

你还需要32位和64位版本,例如glibc(不确定这最后一位,但这就是我的linux系统设置的方式,似乎可以用于64位和32位编译.

These posts are worth a look too (from gcc help)

如果您需要更多帮助,请随时回复我,并努力做到这一点.

附录:

刚发现这些帖子也可能有所帮助:here

大佬总结

以上是大佬教程为你收集整理的c – 使用g构建64位可执行文件全部内容,希望文章能够帮你解决c – 使用g构建64位可执行文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。