使用 ocaml dune 构建 "hello world"
Building "hello world" with ocaml dune
按照 https://dune.readthedocs.io/en/stable/quick-start.html 上的教程,我创建了一个包含
的文件 hello_world.ml
print_endline "Hello, world!"
和一个包含
的文件dune
(executable
(name hello_world))
然后输入
dune build hello_world.exe
但它抱怨其他(完全不相关的)文件中的错误。
沙丘是否有可能查看其他文件,即使它们没有在 dune
文件中提及(甚至递归地)?以及如何预防?
是的,dune 将搜索当前文件夹中所有包含 *.ml 或 *.re 文件的文件。要禁用此行为,请使用 modules
节并明确指定哪些模块包含您的可执行文件。例如,如果它由 hello_world.ml
和 utilities.ml
编译单元组成,那么下面的规范将适用于您,
(executable
(name hello_world)
(modules hello_world utilities))
按照 https://dune.readthedocs.io/en/stable/quick-start.html 上的教程,我创建了一个包含
的文件hello_world.ml
print_endline "Hello, world!"
和一个包含
的文件dune
(executable
(name hello_world))
然后输入
dune build hello_world.exe
但它抱怨其他(完全不相关的)文件中的错误。
沙丘是否有可能查看其他文件,即使它们没有在 dune
文件中提及(甚至递归地)?以及如何预防?
是的,dune 将搜索当前文件夹中所有包含 *.ml 或 *.re 文件的文件。要禁用此行为,请使用 modules
节并明确指定哪些模块包含您的可执行文件。例如,如果它由 hello_world.ml
和 utilities.ml
编译单元组成,那么下面的规范将适用于您,
(executable
(name hello_world)
(modules hello_world utilities))