在编译 OCaml 应用程序时,我收到以下错误:
File "/tmp/ocamlpp466ee0", line 308, characters 34-233:
Error: Signature mismatch:
...
The field `unlock' is required but not provided
The field `lock' is required but not provided
Command exited with code 2.
我的猜测是该错误与 OCaml 库 Datalog 相关(我已从此处安装了 0.3 版),因为文件中的第 308 行是 /tmp/ocamlpp466ee0 以下代码中的第一个
module Logic = Datalog.Logic.Make(struct
type t = atom
let equal = eq_atom
let hash = hash_atom
let to_string a = Utils.sprintf "%a" pp_atom a
let of_string s = atom_of_json (Json.from_string s)
end)
如果有人可以帮助我知道我做错了什么,我将不胜感激。
此外,我想不明白为什么每次执行“make”时都会生成文件/tmp/ocamlpp466ee0?我试图通过阅读 Makefile 来理解,但没有成功。