gcc:在32位平台上编译64位二进制文​​件

发布于 2024-12-07 09:29:53 字数 49 浏览 0 评论 0原文

是否可以使用 gcc 在 32 位 Linux 平台上编译 64 位二进制文​​件?

Is it possible to compile a 64-bit binary on a 32-bit Linux platform using gcc?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

各空 2024-12-14 09:29:53

如果您安装了 multilib GCC,则只需将 -m64 添加到命令行即可。如果编译器不是使用多库支持构建的,则编译器应该抱怨。

为了链接,您需要标准库的所有 64 位对应项。如果您的发行版有 multilib GCC,这些也应该位于存储库中。

If you have a multilib GCC installed, it's as simple as adding -m64 to the commandline. The compiler should complain if it is not built with multilib support.

In order to link, you'll need all the 64-bit counterparts of the standard libraries. If your distro has a multilib GCC, these should also be in the repositories.

活雷疯 2024-12-14 09:29:53

如果 -m64 选项不起作用,请进入 Synaptic 并搜索 gcc-multilib 或 g++-multilib 并安装软件包。然后,使用 -m64 选项进行编译。

Go into Synaptic and search for gcc-multilib or g++-multilib and install the package, if the -m64 option does not work. Then, compile with the -m64 option.

太阳公公是暖光 2024-12-14 09:29:53

您需要一个可以在 64 位机器上编译的 gcc,例如 x86_64-linux-gcc。检查您的分发包管理器。

You will need a gcc that will compile on 64 bits machines, eg x86_64-linux-gcc. Check your distribution package manager.

临走之时 2024-12-14 09:29:53

我认为你可以先安装 gcc-multilib 软件包。
然后使用gcc -m64 yourcode编译你的代码,你可以使用file yourprogram检查ELF文件,输出应该是这样的
你的程序:ELF 64 位 LSB 可执行文件,......

I think you could install gcc-multilib pachage first.
And then compile your code using gcc -m64 yourcode, you cound check the ELF file using file yourprogram, the output should be like this
yourprogram: ELF 64-bit LSB executable,.......

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文