我需要一个用于 Linux 中 Fortran 77 的编译器。
有没有人们使用的免费编译器?
我听说过 g77,但我找不到 rpm 或如何在 linux 中安装它。
谢谢!
我需要一个用于 Linux 中 Fortran 77 的编译器。
有没有人们使用的免费编译器?
我听说过 g77,但我找不到 rpm 或如何在 linux 中安装它。
谢谢!
GCC 的 Fortran 编译器名称已更改:g77
已替换为gfortran
,它处理 Fortran 95 和可能更新的变体。
Ubuntu中的包被称为gfortran
:
sudo apt-get install gfortran
(或使用突触)
Fedora 中的包称为 gfortran,它是 gcc 的一部分,您可能已经拥有它:
sudo yum install gcc
(或使用pirut)
类似的搜索也应该适用于您的发行版。
更新:在 RedHat 4.1.2 上,该包似乎被称为gcc4-gfortran
. 顺便说一句,你应该可以用 yum 搜索这个,这可能是你问题的最佳答案:
yum search "*fortran*"
对于亚马逊 Linux:
sudo yum --enablerepo=epel install gcc-gfortran
“夸克”在他的回答中写道,g77 更名为 gfortran。这是不正确的。
g77 ang gfortran 是不同的编译器。g77在 GNU 编译器集合 (GCC) 中被 gfortran取代,它没有重命名为gfortran。
gfortran 是基于 g95 编译器的现代 Fortran 编译器。g77 是废弃软件。他们不共享代码库。g77 和 gfortran 之间的二进制文件和库也不兼容,因为它们使用不同的 ABI。
g77 与称为 f2c 的编译器相同(可以从Netlib下载),或者更准确地说是一个称为 fc 的 shell 脚本,它调用 f2c 然后 cc 在输出上。g77 所做的只是跳过 C 作为一种中间语言,因为它在 1980 年代和 1990 年代初期会带来速度损失。f2c 和 g77 是由同一个人编写的,其他方面相同。凭借现代 CPU(长管道和分支预测)和现代 C 编译器(更好的别名分析),g77 与原始 f2c 相比没有任何优势。另一方面,gfortran 支持现代 Fortran 标准(Fortran 90、95、2003 和 2008)以及旧的 Fortran 77 和 Fortran 66(又名 FORTRAN IV),并且是对 g77 和 f2c 的明显改进。它还可以生成更快的代码并为我们提供更好的错误消息。
g77 与 f2c 二进制兼容,但与 gfortran 不兼容。通过传递 -ff2c 可以强制 gfortran 采用 g77 ABI。如果可能,应避免使用此编译器选项,因为它会降低 Fortran 代码的性能。
如果我记得很清楚,GNU 没有 FORTRAN 编译器,而是一个 FORTRAN 预处理器(或任何名称)。它只是将您的代码转换为 C 并使用 C 编译器对其进行编译。当然,性能在这个过程中变得很糟糕。
但是,如果您使用的是 FORTRAN,我认为它是一种计算项目。如果它是免费的(不是学术和课程相关的),您可以免费获得英特尔 FORTRAN 编译器。根据我的经验,它比任何免费实现快 3-4 倍。
gcc-fortran
是Fortran
编译器的包名称openSUSE 11.x
。
linux-y3pi: # zypper what-provides gcc-fortran
Loading repository data...
Reading installed packages...
S | Name | Type | Version | Arch | Repository
--+-------------+---------+---------+--------+------------------------
i | gcc-fortran | package | 4.5-4.2 | x86_64 | openSUSE-11.3-Oss
i | gcc-fortran | package | 4.5-4.2 | x86_64 | openSUSE-11.3 11.3-1.82
v | gcc-fortran | package | 4.5-4.2 | i586 | openSUSE-11.3-Oss
[1]+ Done yast2
linux-y3pi: #
我做了以下步骤并且工作了!
编辑您的/etc/apt/sources.list
在该文件中添加此文本 ( /etc/apt/sources.list
):
deb http://hu.archive.ubuntu.com/ubuntu/ hardy universe
deb-src http://hu.archive.ubuntu.com/ubuntu/ hardy universe
deb http://hu.archive.ubuntu.com/ubuntu/ hardy-updates universe
deb-src http://hu.archive.ubuntu.com/ubuntu/ hardy-updates universe
保存存档
打开终端,输入:sudo apt-get install fort77
安装软件的方法是特定于发行版的。例如,在 Ubuntu9 中,我会启动 Synaptic 并搜索 Fortran 或 g77(也可以使用 apt-get)。
我对其他发行版知之甚少,尽管我听说过(我认为但我不确定)RedHat 和 Suse 的 yum 和 yast。
如果您的标准软件包安装程序无法使用它,您将不得不寻找另一种解决方案,例如:
第二种方法听起来不祥,但实际上并非如此(除了确保您拥有正确的依赖关系)。大多数源代码包遵循的配置/制作/安装过程使得以交叉分发的方式进行非常容易。
您还可以使用 Netbeans 并制作 c&c++ 项目并使用新的 .f90 文件添加 Fortran 并使用 Netbeans 工具运行和调试。在此之前,您必须安装 gcc 和 gfortran 软件包。
根据我的经验,Red Hat 发行版(以及基于它的发行版)包含 gfortran,但在您进行安装时它是一个选项,因此您的系统似乎很可能是在没有 gfortran 的情况下设置的。如果你有安装媒体,我想你应该可以从那里安装 gfortran。
否则,要为您的系统获得正确的 gfortran RPM,我建议使用相关的 rpmfind page。
一旦你安装了 gfortran,我认为“-std=legacy”(引用我的)应该允许 F77 编译工作。