3

Я получаю следующую загадочную ошибку:

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 присутствуют в правильном месте

Я использую это программное обеспечение http://metamap.nlm.nih.gov/ в Ubuntu.

2 ответа2

2

Чтобы действительно знать, вам нужно отладить программное обеспечение. Однако fopen - это стандартная функция библиотеки C (см., Например, http://www.gnu.org/s/libc/manual/html_node/Opening-Streams.html#index-fopen-929 ), которая используется для открытия файла. для чтения или письма.

Сообщение об ошибке, которое вы видите, часто печатается, если программа вызывает fopen , и вызов не выполняется. Правильно настроенные программы также распечатывают, какой файл они пытались открыть и какой сбой произошел, но эта программа, по-видимому, не относится к числу таких :-).

Поэтому, скорее всего, это означает, что программа пыталась открыть файл, но не смогла (файл не найден / проблема с правами / диск в огне / что угодно).

Для дальнейшего изучения вы можете запустить программу с использованием strace ( https://wiki.ubuntu.com/Strace ), которая (более или менее) будет регистрировать все системные вызовы, которые выполняет работающая программа. Там вы можете найти вызов fopen прямо перед сообщением об ошибке, которое должно быть виновником. В журнале Strace будет показано имя файла.

1

Ваша ОС 64-битная или 32-битная? Если вы работаете в 64-битной ОС, проблема может быть в 32-битных библиотеках в 64-битной системе. Пожалуйста, обратитесь к http://metamap.nlm.nih.gov/FAQ.html для получения дополнительной информации. Я использую Ubuntu 64-bit. Проблема была решена при следовании инструкции:$ apt-get install ia32-libs

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .