OCaml makefile依赖问题

Posted

技术标签:

【中文标题】OCaml makefile依赖问题【英文标题】:OCaml makefile dependency problem 【发布时间】:2010-12-01 01:51:54 【问题描述】:

我正在为我正在从事的项目使用 OCaml Makefile,并且我有以下模块

DynamicTree.ml

Huffman_Dynamic.ml 使用DynamicTree

Huffman_Static.ml

main.ml 同时使用 Huffman_StaticHuffman_Dynamic

这是我的制作文件:

# put here the names of your source files (in the right order)
SOURCES = huffman_static.ml dynamictree.ml huffman_dynamic.ml main.ml

# the name of the resulting executable
RESULT  = huffman

# generate type information (.annot files)
ANNOTATE = yes

# make target (see manual) : byte-code, debug-code, native-code
all: native-code

include OCamlMakefile

当我尝试制作项目时,我得到了一个 Unbound value DynamicTree.create_anchor_leaf,它来自 Makefile 生成的 ocamlopt -c -dtypes huffman_dynamic.ml

Ocaml Makefile 网页 states that it generates 自动依赖,我在这里遗漏了什么吗?

谢谢。

【问题讨论】:

您能否发布一个日志,记录在make clean 之后运行make 时发生的情况?这可以提供一些见解。 【参考方案1】:

你名字的大小写正确吗?在您的帖子中,您同时使用了DynamicTree.mldynamictree.ml

您确定问题来自 Makefile 吗?真的有 create_anchor_leaf 导出的 DynamicTree.ml 函数吗?没有.mli隐藏它?

【讨论】:

谢谢,这是导致问题的 T 的大写

以上是关于OCaml makefile依赖问题的主要内容,如果未能解决你的问题,请参考以下文章

OCaml 中的依赖类型

在Vim中使用merlin在ocaml中开发coq插件

Debian 11 上的 Libgtksourceview-2.0dev 和 Ocaml/Opam/Ocaml-Top

Lisp 的 let* 的 Ocaml 等价物?

在OCaml中忽略关于=的某些类型

协议缓冲区文件的 Makefile 自动依赖关系问题