我有一个专有程序,试图在64位系统上使用。
当我启动安装程序时,它可以正常运行,但是在尝试更新自身并编译一些模块之后,它无法加载它们。
我怀疑这是因为它正在使用gcc,而gcc试图将它们编译为64位系统,因此该程序无法使用这些模块。
是否有任何方法(一些环境变量或类似的东西)强制gcc为32位平台执行所有操作。32位chroot可以工作吗?
您需要使GCC使用该-m32标志。
-m32
您可以尝试向您的脚本编写一个简单的shell脚本$PATH并将其命名为gcc(确保您不覆盖原始gcc,并确保新脚本早于出现$PATH,并且使用了指向GCC的完整路径。
$PATH
我认为您需要的代码就像是/bin/gcc -m32 $*取决于您的shell一样(在$*那里可以包含所有参数,尽管可能还有其他东西-非常重要!)
/bin/gcc -m32 $*
$*