Compiler construction 如何确保parser.cmi在lexer之前生成

Compiler construction 如何确保parser.cmi在lexer之前生成,compiler-construction,makefile,ocaml,Compiler Construction,Makefile,Ocaml,我发现了一个用OCaml编写的伪Pascal小编译器的示例。一切看起来都很好,但当我启动make时,它出现了一个错误: ocamlc.opt -g -w p -c lexer.ml File "lexer.mll", line 2, characters 0-11: Error: Unbound module Parser make: *** [lexer.cmo] Error 2 它似乎试图在运行解析器之前开发lexer。Makefile是,我不太擅长Makefile,谁能帮我找到可以修改一

我发现了一个用OCaml编写的伪Pascal小编译器的示例。一切看起来都很好,但当我启动
make
时,它出现了一个错误:

ocamlc.opt -g -w p -c lexer.ml
File "lexer.mll", line 2, characters 0-11:
Error: Unbound module Parser
make: *** [lexer.cmo] Error 2
它似乎试图在运行解析器之前开发lexer。Makefile是,我不太擅长Makefile,谁能帮我找到可以修改一点的地方,以确保执行顺序


多谢各位

在这种情况下,我认为您不需要修改任何内容。Makefile中有大量依赖项生成内容,但您需要使用以下工具手动运行它:

make depend
之前:

make