处理gfortran错误?

时间:2014-06-13 15:11:25

标签: fortran gfortran

我经常在Fortran和C中为我的工作做一些代码,但是几天前我收到以下错误:

$ gfortran D.f -o D.x gfortran:错误尝试执行' f951':execvp:没有这样的文件或目录

(我在I7上有Ubuntu 14.04,8个核心和64b)

我确实尝试在论坛上搜索并选择了一些选项,但似乎没有任何工作......有人可以帮忙......?

我想当我做了安装adobereader和/或skype的事情时,问题就开始了。


抱歉,好的。找到f951给出:

$ locate f951
/usr/lib/gcc/x86_64-linux-gnu/4.8/f951
/usr/lib/gcc-cross/aarch64-linux-gnu/4.8/f951
/usr/lib/gcc-cross/arm-linux-gnueabihf/4.8/f951
/usr/lib/gcc-cross/powerpc-linux-gnu/4.8/f951
/usr/lib/gcc-cross/powerpc64le-linux-gnu/4.8/f951
$

命令的结尾触及D.f&& strace gfortran -c D.f> PATH-TO-F951.txt给出:

close(3)                                = 0
stat("/usr/lib64/gcc/x86_64-suse-linux/4.0.2/x86_64-linux-gnu/4.8/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/gcc/x86_64-suse-linux/4.0.2/x86_64-linux-gnu/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/gcc/x86_64-suse-linux/4.0.2/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/gcc/x86_64-linux-gnu/bin/x86_64-linux-gnu/4.8/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/gcc/x86_64-linux-gnu/bin/x86_64-linux-gnu/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
stat("/usr/lib64/gcc/x86_64-linux-gnu/bin/f951", 0x7fff0490e630) = -1 ENOENT (No such file or directory)
vfork(gfortran: error trying to exec 'f951': execvp: No such file or directory
)                                 = 8373
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=8373, si_status=255, si_utime=0, si_stime=0} ---
 wait4(8373, [{WIFEXITED(s) && WEXITSTATUS(s) == 255}], 0, NULL) = 8373
 stat("/tmp/ccf8JxJd.s", {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
 unlink("/tmp/ccf8JxJd.s")               = 0
 exit_group(1)                           = ?
 +++ exited with 1 +++
 $

我可以看到有什么不对,我相信......," suse-linux" ?但如何纠正呢?

1 个答案:

答案 0 :(得分:0)

根据Ubuntu 14.04中gfortran包的文件列表,可在此处找到f951/usr/lib/gcc/x86_64-linux-gnu/4.8/f951。您可以先检查存在/权限:

ls -lF /usr/lib/gcc/x86_64-linux-gnu/4.8/f951
file /usr/lib/gcc/x86_64-linux-gnu/4.8/f951

如果可执行文件在那里,那么可能由于某种原因找不到它。

根据一些随机的互联网消息来源,可能是Adobe Acrobat正在破坏/usr/lib/gcc/...,将其自己的库放在那里,但我不能否认/确认这一点,因为我既没有Ubuntu也没有Adobe Acrobat。

我认为最简单的选择是重新安装gcc和gfortran吗?

sudo apt-get update
sudo apt-get install --reinstall gcc gfortran