我有一个包含 OCaml .ml 文件和 Menhir .mly 文件的项目。我使用 ocamlbuild 来编译项目。
我的 _tags 文件包含这一行:
true: use_menhir, package(batteries)
一切正常,除非我想在 .mly 文件中使用电池。如果我
open Batteries ;;
%{
之间和 %}
在我的 .mly 文件中,调用 ocamlbuild 时出现“错误:未绑定(bind)的模块电池”。似乎当 ocamlbuild 调用 menhir 时,像这样:
/usr/bin/menhir --ocamlc '/usr/bin/ocamlfind ocamlc' --infer parser.mly
它忘记添加
-package batteries
--ocamlc
中的(或等效的) menhir的选择。我该如何解决?也许我的 _tags 文件中的 .mly 文件的特殊规则会有所帮助?或者它是一个 ocamlbuild 错误?
最佳答案
这应该在最近的 OCaml 版本中得到修复(参见 http://caml.inria.fr/mantis/view.php?id=5763 )。你运行的是哪个版本?
关于ocaml - 通过 ocamlbuild 在 .mly 文件中使用电池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18290774/