2
**Build mode: shared
ocamlbuild -no-links syntax.otarget byte.otarget src/batteries_help.cmo META shared.otarget

Finished, 0 targets (0 cached) in 00:00:00.

+ ocamlfind ocamlc -c -g -annot -warn-error A -package camomile,num,str -package camlp4.lib -pp camlp4of -pp camlp4of -I libs/estring -I benchsuite -I src -I testsuite -I build -I qtest -I libs -I src/syntax/pa_comprehension -I src/syntax/pa_strings -o libs/estring/pa_estring_top.cmo 
libs/estring/pa_estring_top.ml

File "libs/estring/pa_estring_top.ml", line 18, characters 15-44:

Error: Unbound module Toploop

Command exited with code 2.**


Compilation unsuccessful after building 6 targets (5 cached) in 00:00:00.**

我在路径中找到了 toploop.cmi:

cd OCaml/lib/ocaml/compiler-libs/
ls topl*

toploop.cmi

如你所见,

export PATH=/home/xxx/OCaml/lib/ocaml/compiler-libs/:$PATH

我已经/home/xxx/...作为我的系统路径。但它仍然没有工作。我应该怎么做才能包含模块toploop?

4

1 回答 1

2

您似乎正在使用 OCaml 4.00 编译 Batteries(哪个版本?),它引入了新compiler-libs目录(但某些发行版之前有一个,因此可能已关闭)。toploop以前位于 OCaml stdlib 目录的根目录下,但您现在应该在-I +compiler-libs某处添加一个选项,或者使用相应的 ocamlfind 打包 ( -package compiler-libs.toplevel)。

于 2012-11-22T06:49:19.823 回答