我有一个包含 OCaml .ml 文件和 Menhir .mly 文件的项目。我使用 ocamlbuild 来编译项目。
我的 _tags 文件包含这一行:
true: use_menhir, package(batteries)
一切正常,除非我想在 .mly 文件中使用电池。如果我在我的 .mly 文件open Batteries ;;
之间%{
,%}
我在调用 ocamlbuild 时得到“错误:未绑定的模块电池”。
似乎当 ocamlbuild 调用 menhir 时,像这样:
/usr/bin/menhir --ocamlc '/usr/bin/ocamlfind ocamlc' --infer parser.mly
它忘记在menhir-package batteries
的选项中添加(或等效的东西) 。--ocamlc
我该如何解决?也许我的 _tags 文件中的 .mly 文件的特殊规则会有所帮助?或者它是一个 ocamlbuild 错误?