我突然开始出现这个错误。我不知道如何诊断或修复它。我应该通过bar.ml
进行grep并检查每个Big_int函数是否符合Big_int.mli
中的签名?
File "foo.ml", line 1, characters 0-1:
Error: The files /home/bar.cmi
and /usr/lib/ocaml/big_int.cmi make inconsistent assumptions
over interface Big_int
答案 0 :(得分:21)
通常,此消息表示最近重新编译了一个.mli文件,而不是另一个.mli文件。由于其中一个.mli文件位于您的OCaml库中,这可能意味着您已升级了OCaml安装,但从那时起就没有重新编译bar.mli。
如果你只是重新编译bar.mli会怎么样?
答案 1 :(得分:4)
rm bar.cmi
然后再试一次;看起来它是针对不同版本的Big_int
生成的。