我接管了一个由主程序和一个库组成的ocaml项目,但是该库是独立构建的。到现在为止,可以使用“ ocamlopt -I mylib.cmxa myprogram.ml”链接主程序-但是我在使用带有ocamlopt的opam库时遇到了问题,因此我决定改用“ dune”。
我的问题是:如何使用沙丘链接到ocaml库,以使结果与上面的ocamlopt行相同?
答案 0 :(得分:0)
这将有助于查看项目的结构。但是,通常来说,如果您的项目结构如下:
root/
|—— dune-project
|—— lib/
| |—— dune
| |—— lib.ml
|
|—— bin/
| |—— dune
| |—— bin.ml
然后您的lib/dune
看起来像
(library
(name mylib)
(public_name mylib)
(libraries core async))
,您的bin/dune
会在依赖关系中简单列出该库
(executable
(name mybin)
(libraries mylib))
有关更多指导,请查阅dune
存储库中的hello_world
example project。