我正在使用 oasis 构建我的 ocaml 项目,源代码位于名为 src 的目录中。 oasis 构建文件如下所示:

OASISFormat: 0.4
Name:        Test
Version:     0.1
Synopsis:    no
Authors:     Me
License:     BSD-3-clause
Plugins:     META (0.4)

Executable abc
  Path:        src
  BuildTools:  ocamlbuild
  MainIs:      main.ml

现在我想将文件组织到子文件夹中,将 a.mli 和 a.ml 放入 src/util。执行此操作后,该模块对 ocamlbuild/ocamlc 变得不可见,从而导致“未绑定(bind)模块 A”错误。如果我手动调用 ocamlc,我可以添加 -I src/util 标志以使 a.mli 再次可见。

如何在不使文件成为完整库的情况下向 oasis 配置添加其他路径?

最佳答案

oasis 是不可能的,你需要修改你的 _tags 文件,但我不建议你这样做。一般方法是在您的 oasis 文件中创建 Library 条目。这有助于保持您的项目结构干净。如果您不想从 utils 创建一个库,那么何必费心将其移动到子文件夹中。

10-08 12:36