gpt4 book ai didi

c++ - 如何在64位x86环境下编译32位x86应用程序?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:49:32 25 4
gpt4 key购买 nike

如何在64位x86环境下编译32位x86应用程序?

cc/ld/ar 的任何命令,包括选项?谢谢。

非常感谢任何链接。谢谢。

注意:以c代码为例。

最佳答案

要使用 64 位 multilib GCC 编译和链接 C 源文件,您可以执行以下操作:

gcc -m32 -c somefile.c
gcc -m32 somefile.o -o myprog

请注意,所有 32 位库都需要安装并可供 multilib 编译器使用。

ar 应该可以工作,如果构建正确,不鼓励直接调用 ld,因为它的选项与 GCC 的选项完全不同。只需与 GCC 链接即可。


至于为什么“不鼓励直接调用ld”:如果你所有的gcc链接,它就会知道系统/运行时库的确切位置,并且还有关于它需要传递给 ld 的任何特定于平台的选项。当直接调用 ld 时,您需要处理所有这些。这对于 32 位和 64 位的选项以及适当的库目录很重要。

关于c++ - 如何在64位x86环境下编译32位x86应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8384148/

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