9.4 よくあるエラー

この節ではよく遭遇するエラーメッセージについて説明します。

Cannot find file filename

filename という名前のファイルが、カレントディレクトリ、または探索パス中のディレクトリに見つかりません。

filenamemod.cmi の形式の場合、 mod という翻訳単位を参照しようとしたものの、コンパイル済みのインタフェースが見つからなかったことを意味します。 解決策としては、 mod.mli または mod.ml をコンパイルして、コンパイル済みインタフェース mod.cmi を作成してください。

filenamemod.cmo の形式の場合、これは #load で読み込もうとしたバイトコードオブジェクトファイルが存在しなかったということです。 この場合は、 mod.ml をコンパイルしてください。

プログラムが複数のディレクトリにわたる場合には、探索するディレクトリを指定していなかったためにこのエラーが起こることもあります。 その場合には、 #directory 指示子を使って、適切なディレクトリを探索パスに追加てください。

This expression has type t1, but is used with type t2

8.4 節「よくあるエラー」 を参照してください。

Reference to undefined global mod

モジュールの実装を #load で読み込むのを忘れています。 9.2 節「トップレベル指示子」 を参照してください。