在 Ubuntu 16.04 上需要 gnu g77 Fortran 编译器 - 遇到问题

在 Ubuntu 16.04 上需要 gnu g77 Fortran 编译器 - 遇到问题

我正在寻找有关如何获取适用于最新 LTS 版 Ubuntu 的 gnu g77 Fortran 编译器的一些说明。我在网上搜索过,发现基本上各种网站都建议使用不再存在的下载链接(例如此处https://stackoverflow.com/questions/28068148/how-to-install-the-gnu-fortran-77-compiler-or-g77-on-ubuntu-14-04)。

我有一个程序需要 g77 才能运行。有人知道我可以在哪里安装它吗?

答案1

我写了一篇关于在 Ubuntu >=14.04 上安装 g77。但主要细节如下:

添加 Ubuntu 8.04 仓库。通过编辑 sources.list 来执行此操作:

sudo -H gedit /etc/apt/sources.list

然后在该文件的底部添加:

deb http://old-releases.ubuntu.com/ubuntu/ hardy universe
deb-src http://old-releases.ubuntu.com/ubuntu/ hardy universe
deb http://old-releases.ubuntu.com/ubuntu/ hardy-updates universe
deb-src http://old-releases.ubuntu.com/ubuntu/ hardy-updates universe

然后运行更新并安装 g77:

sudo apt-get update
sudo apt-get install g77

你可能会很幸运,g77 可能马上就为你工作了。你可能会收到一条错误消息,如下所示:

/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status

这意味着 ld 找不到库 (libgcc_s)。自己找到库,检查 ld 正在查找的位置,然后在那里放置链接:

sudo find /usr/ -name libgcc_s.so
ld -lgcc_s --verbose
sudo ln -s /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc_s.so /usr/lib/x86_64-linux-gnu/

(您可能必须根据 find 和 ld 命令的返回结果修改链接命令中的目标和链接)

编辑:

David Foerster 在评论中建议混合使用 Ubuntu 版本不是一个好主意。所以我应该提到,在安装 g77 后,我通常会再次编辑 /etc/apt/sources.list 文件并注释掉 8.04 存储库:即

sudo -H gedit /etc/apt/sources.list

进而:

## deb http://old-releases.ubuntu.com/ubuntu/ hardy universe
## deb-src http://old-releases.ubuntu.com/ubuntu/ hardy universe
## deb http://old-releases.ubuntu.com/ubuntu/ hardy-updates universe
## deb-src http://old-releases.ubuntu.com/ubuntu/ hardy-updates universe

在过去 5 年左右的时间里,我一直在这样安装和运行 g77,没有任何困难。

相关内容