【发布时间】:2015-03-24 04:46:45
【问题描述】:
我已经使用 opam 安装了一些软件包,例如 Core 和 Batteries。 ocamlinit文件如下:
(* Added by OPAM. *)
#use "topfind"
#thread
#camlp4o
#require "core.top"
#require "core.syntax"
#require "batteries"
let () =
try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
with Not_found -> ()
;;
当我使用 utop 运行它时,我可以看到电池模块,但我看不到任何核心模块。当我尝试执行 open Core 或 open Core.Std 时,我得到一个未绑定的模块错误。我还尝试添加#require "core" 并且错误仍然存在。
我不确定错误是什么,因为我按照“Real World OCaml”一书中的安装说明进行操作。
当我从 utop 开始时,我还看到两条消息:
No such package: oUnit" - required by `pa_ounit'"
No such package: pa_pipebang" - required by `core.syntax'"
我不确定这些是否与问题有关,但是当我执行 opam list ounit 和 opam list pipebang 时,它显示它们已安装。
【问题讨论】:
-
你有没有试过把 let () = try Topdirs.... 代码放在文件顶部,在#use "topfind"之前
-
刚刚尝试过,遗憾的是它没有任何作用。