我有一个 64 位 RHEL 5.3 服务器。如果我将其编译为 32 位,则有一个服务器软件的内存效率更高。有没有办法告诉 GCC 以 32 位为目标?
我只希望一个特定的软件是 32 位的,其他一切都应该保持 64 位。
该软件未打包在 yum 存储库中,因此我不能只执行“yum install 32-bit-version”。
我有一个 64 位 RHEL 5.3 服务器。如果我将其编译为 32 位,则有一个服务器软件的内存效率更高。有没有办法告诉 GCC 以 32 位为目标?
我只希望一个特定的软件是 32 位的,其他一切都应该保持 64 位。
该软件未打包在 yum 存储库中,因此我不能只执行“yum install 32-bit-version”。
如果您坚持自己编译,gcc 接受
-m32
应该指示编译器生成 32 位对象/可执行文件的选项。(不过,如果你可以走 gekkz 建议的路线,那就去做吧)。如果您正在使用
yum
,您可能应该这样做install my_software-1.2.2-1.i386
。请注意,这是一个包外观的示例,因为您必须提供带有版本的实际包名称并附加 i386。正如 Joergensen 所说,您可以使用
-m32
旗帜。这需要传递给编译器和链接器。此外,请确保您拥有正确的 32 位开发包。