我有一个需要在 64 位 ubuntu 服务器上运行的 32 位 Fortran 应用程序。我已经在 32 位 ubuntu 机器上验证了该应用程序,它运行良好;但是,当我在 64 位服务器上运行时出现以下错误:
error while loading shared libraries: libgfortran.so.3: cannot open shared object file: No such file or directory
对此进行了一些研究,我没有高兴地尝试了以下方法:
sudo apt-get install libgfortran3:i386
找不到包裹- 手动安装 libgfortran 的 32 位 .deb 包(因架构不正确而失败)
- 安装 getlibs 并让它确定依赖项是什么
- 运行在...下
ldconfig -v
找到libgfortran.so.3 -> libgfortran.so.3.0.0
/usr/lib/x86_64-linux-gnu:
- ...然后尝试将路径更改为该路径
LD_LIBRARY_PATH
,但什么也没做(尽管我不得不说,一旦我们开始谈论库路径,我的知识就会变得非常少...) - 检查是否安装了 ia32-libs,它们是
- 删除并重新安装 libgfortran,然后
dpkg --configure --pending
运行dpkg --path-include=/usr/lib/x86_64-linux-gnu
.
如果可能的话,我想远离创建一个 32 位的 chroot,但在这一点上,如果还有其他事情可以让我不必这样做,我不知道......
你们中有人知道我还能做些什么吗?谢谢你。