“fopen:没有这样的文件或目录”错误


4

我正在接受以下神秘错误:

akshay@akshay-VirtualBox:/mnt/mmpp$ ./bin/metamap10

/mnt/mmpp/bin/SKRrun.10 -L 2010 /mnt/mmpp/bin/metamap10.BINARY.Linux -Z 10 --debug input.txt
fopen: No such file or directory

这个错误意味着它不能fopen无法找到所需文件或fopen本身不存在,请注意SKRrun.10和metamap10.BINARY.Linux都存在于正确的位置

我在Ubuntu上使用这个软件http://metamap.nlm.nih.gov/

Answers:


2

要知道,你必须调试软件。但是,fopen是一个标准的C库函数(参见http://www.gnu.org/s/libc/manual/html_node/Opening-Streams.html#index-fopen-929),它用于打开文件阅读或写作。

如果程序调用fopen,则通常会打印您看到的错误消息,并且调用失败。正确行为的程序也会打印出他们试图打开的文件,以及发生了什么样的故障,但这个程序显然不是其中之一:-)。

所以很可能这意味着该程序试图打开一个文件,但不能(文件未找到/权限问题/磁盘着火/无论如何)。

为了进一步调查,您可以使用stracehttps://wiki.ubuntu.com/Strace)运行该程序,这将(或多或少)记录正在运行的程序所做的所有系统调用。你可以在错误信息之前找到fopen的调用,这应该是罪魁祸首。strace的日志输出将显示文件名。


谢谢你的答案,似乎在提取软件时遇到了一些问题。(为了将来的参考:我在非ext文件系统上提取它。因此无法创建符号链接。)

1

您的操作系统是64位还是32位?如果您运行的是64位操作系统,则问题可能是64位系统上的32位库。有关更多信息,请参阅http://metamap.nlm.nih.gov/FAQ.html。我使用Ubuntu 64位。遵循以下指令解决了这个问题:$ apt-get install ia32-libs

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.