【问题标题】:When should -m32 option of gcc be used?什么时候应该使用 gcc 的 -m32 选项?
【发布时间】:2011-01-26 10:57:26
【问题描述】:

我正在编写一个程序,如果我在 Suse 10 32 位系统上编译而不添加 -m32 选项并在 Suse 10 64 位上执行它,它可以正常工作。

在这种情况下,我不需要添加-m32 选项吗?

我们能否直接在 64 位系统上执行基于 32 位系统构建的程序而不会产生任何副作用?或者是否需要任何更新或更改?

【问题讨论】:

标签: c gcc 32bit-64bit


【解决方案1】:

在 64 位操作系统上运行 32 位可执行文件没有问题(只要存在并找到 32 位动态库)。

-m32 用于在配置为默认编译 64 位对象的编译器上编译 32 位对象。

【讨论】:

    【解决方案2】:

    只要操作系统在 64 位操作系统上同时支持 32 位和 64 位程序(提示:并非所有程序都支持,例如 OpenBSD),那么只要您拥有所有 32 位依赖项,就不会有任何问题为它..

    【讨论】:

      猜你喜欢
      • 2010-12-03
      • 1970-01-01
      • 2023-04-02
      • 2011-04-15
      • 2017-04-10
      • 2012-03-19
      • 2018-05-12
      • 2018-12-11
      • 1970-01-01
      相关资源
      最近更新 更多