是否可以使用gcc在32位Linux平台上编译64位二进制文件?
答案 0 :(得分:26)
如果您安装了multilib GCC,就像在命令行中添加-m64
一样简单。如果没有使用multilib支持构建,编译器应该抱怨。
为了链接,您需要标准库的所有64位副本。如果你的发行版有一个multilib GCC,它们也应该在存储库中。
答案 1 :(得分:2)
如果-m64
选项不起作用,进入Synaptic并搜索gcc-multilib或g ++ - multilib并安装软件包。然后,使用-m64
选项进行编译。
答案 2 :(得分:1)
你需要一个可以在64位机器上编译的gcc,例如x86_64-linux-gcc
。检查您的分发包管理器。
答案 3 :(得分:0)
我认为您可以先安装gcc-multilib
pachage。
然后使用gcc -m64 yourcode
编译代码,然后使用file yourprogram
检查ELF文件,输出应该是这样的
yourprogram: ELF 64-bit LSB executable,.......