次のような不可解なエラーが発生します:
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 上で。
答え1
本当に知るには、ソフトウェアをデバッグする必要があります。ただし、fopen
これは標準のCライブラリ関数です(例を参照)。http://www.gnu.org/s/libc/manual/html_node/Opening-Streams.html#index-fopen-929) は、ファイルを読み取りまたは書き込み用に開くために使用されます。
表示されるエラー メッセージは、プログラムが を呼び出してfopen
、呼び出しが失敗した場合によく表示されます。適切に動作するプログラムでは、開こうとしたファイルと、発生した障害の種類も出力されますが、このプログラムは明らかにそのようなプログラムではありません :-)。
したがって、おそらく、プログラムがファイルを開こうとしたが、開かなかったことを意味します (ファイルが見つからない / 権限の問題 / ディスクが火災に遭った / その他)。
さらに詳しく調べるには、strace
(参考文献) を実行すると、実行中のプログラムが行うすべてのシステム コールが (多かれ少なかれ) ログに記録されます。そこで、エラー メッセージの直前の fopen 呼び出しを探します。これが原因であるはずです。strace のログ出力にはファイル名が表示されます。
答え2
OSは64ビットですか、それとも32ビットですか?64ビットOSをお使いの場合、問題は64ビットシステム上の32ビットライブラリにある可能性があります。http://metamap.nlm.nih.gov/FAQ.html詳細については、Ubuntu 64ビット版を使用しています。以下の手順を実行すると、問題は解決しました: $ apt-get install ia32-libs