gfortran:错误尝试执行'f951':execvp:没有这样的文件或目录

Giu*_*lia 6 gcc fortran compiler-errors gfortran

我正在尝试编译在互联网上找到的代码.实际上我正在尝试编译http://www.cs.berkeley.edu/~fowlkes/BSE/上的代码.

我尝试安装gfortran以及在我的MAC中编译它所需的所有其他库.但是当我运行命令make时,我收到以下错误:

$ make
(cd trlan && make -f Makefile.gcc)
gfortran -O3 -ffixed-line-length-132 -c dsort2.f
gfortran: error trying to exec 'f951': execvp: No such file or directory
make[1]: *** [dsort2.o] Error 1
make: *** [trlan/libtrlan.a] Error 2
Run Code Online (Sandbox Code Playgroud)

我相信这个错误与我的c ++编译器的版本有关,它与gfortran不兼容.

当我运行命令gcc --version时:

$ gcc --version
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
Run Code Online (Sandbox Code Playgroud)

当我运行命令gfortran --version时:

$ gfortran --version
GNU Fortran (GCC) 4.8.0 20120930 (experimental)
Run Code Online (Sandbox Code Playgroud)

我正在运行命令make的目录下的Makefile位于:https://www.dropbox.com/s/q7mxvhnqg62ioum/Makefile.gcc

目录trlan下的Makefile位于:https://www.dropbox.com/s/jydwpkg3f1upbgf/Makefile.gcc

任何人都知道如何解决这个问题或如何找到可以帮助我解决它的工具?

我正在尝试这个:http: //eftrunk.blogspot.com/2011/11/how-to-fix-error-trying-to-exec-f951.html

wes*_*sel 5

我发现的最简单的解决方案(可能不是最干净的)是将路径中的 f951 静态链接到 gfortran 的二进制文件:

find /usr/local/ -name f951
Run Code Online (Sandbox Code Playgroud)

这对我来说返回了:

/usr/local/gfortran/libexec/gcc/x86_64-apple-darwin11/4.6.2/f951
/usr/local/gfortran/libexec/gcc/x86_64-apple-darwin14/5.1.0/f951
Run Code Online (Sandbox Code Playgroud)

所以我在 /usr/local/bin 中放了一个最适合我的系统的链接:

sudo ln -s /usr/local/gfortran/libexec/gcc/x86_64-apple-darwin14/5.1.0/f951 /usr/local/bin/.
Run Code Online (Sandbox Code Playgroud)

现在 gfortran 又可以工作了。无需卸载 XCode 或任何其他夸大的工作量。


Giu*_*lia -3

答案可以在以下网站找到:

http://eftrunk.blogspot.com/2011/11/how-to-fix-error-trying-to-exec-f951.html

基本上需要删除 Xcode,使用http://hpc.sourceforge.net/重新安装 gcc 和 gfortran ,然后重新安装 Xcode。