使用 ocamlbuild 构建库,使用 ocamlfind 安装它——最佳实践是什么?
Building library with ocamlbuild, installing it with ocamlfind - what's the best practice?
我正在使用 ocamlbuild
通过 mylib.mllib
文件编译 OCaml 库,该文件列出了构成库的模块。之后我想使用 ocamlfind
安装库文件。与使用 ocamlbuild
构建的二进制文件不同,所有库文件都在 _build
目录中。是使用
之类的方式安装它们的正确方法吗
ocamlfind install META _build/a.cma _build/a.cmxa ...
或者 ocamlbuild
和 ocamlfind
之间是否有更好的整合?特别是,我注意到 ocamlbuild
的 -install-lib-dir
标志,但找不到有关其用途的文档。
我知道 oasis
但现在想在 Makefile 和 install
目标中解决问题。所有这些都是在使用 opam
库管理器的情况下进行的,但对于讨论来说应该无关紧要。
没有,没有具体的集成。 ocamlbuild
与预构建(配置)和 post-构建(安装)工具无关,ocamlfind
同样与构建工具无关。
你是对的,ocamlbuild
不太擅长从 _build/
可靠地模拟链接目标。这是一个已知的故障,但您可以随时处理 report 对您来说有问题的特定情况。反正我觉得还是直接参考_build/
里面的文件比较好
Daniel Bünzli 的 feature request 让 ocamlbuild 帮助生成 OPAM 的 .install
文件,而不是手动编写(或 makefile 脚本)。我个人没有时间研究这些功能,但我热烈欢迎任何 ocamlbuild 在这方面的贡献。
我正在使用 ocamlbuild
通过 mylib.mllib
文件编译 OCaml 库,该文件列出了构成库的模块。之后我想使用 ocamlfind
安装库文件。与使用 ocamlbuild
构建的二进制文件不同,所有库文件都在 _build
目录中。是使用
ocamlfind install META _build/a.cma _build/a.cmxa ...
或者 ocamlbuild
和 ocamlfind
之间是否有更好的整合?特别是,我注意到 ocamlbuild
的 -install-lib-dir
标志,但找不到有关其用途的文档。
我知道 oasis
但现在想在 Makefile 和 install
目标中解决问题。所有这些都是在使用 opam
库管理器的情况下进行的,但对于讨论来说应该无关紧要。
没有,没有具体的集成。 ocamlbuild
与预构建(配置)和 post-构建(安装)工具无关,ocamlfind
同样与构建工具无关。
你是对的,ocamlbuild
不太擅长从 _build/
可靠地模拟链接目标。这是一个已知的故障,但您可以随时处理 report 对您来说有问题的特定情况。反正我觉得还是直接参考_build/
里面的文件比较好
Daniel Bünzli 的 feature request 让 ocamlbuild 帮助生成 OPAM 的 .install
文件,而不是手动编写(或 makefile 脚本)。我个人没有时间研究这些功能,但我热烈欢迎任何 ocamlbuild 在这方面的贡献。