【发布时间】:2013-02-19 00:12:56
【问题描述】:
我成功安装了ocaml-batteries-included和findlib。
我可以毫无问题地执行“ocamlfind ocamlc -package battery -c mycode.ml”。
另外,如果我这样做 ocamlfind list,我会得到
$ ocamlfind list
batteries (version: 2.0)
batteries.pa_comprehension (version: 2.0)
batteries.pa_comprehension.syntax (version: 2.0)
batteries.pa_llist (version: 2.0)
batteries.pa_llist.syntax (version: 2.0)
batteries.pa_string (version: 2.0)
batteries.pa_string.syntax (version: 2.0)
batteries.syntax (version: 2.0)
bigarray (version: [distributed with Ocaml])
camlp4 (version: [distributed with Ocaml])
...
问题是using batteries 中的ocaml (toplevel)。
我已经按照告知设置了.ocamlinit:
#use "topfind";;
Toploop.use_silently
Format.err_formatter (Filename.concat (Findlib.package_directory
"batteries") "battop.ml");;
但是当我启动 ocaml 时,我得到了这个:
$ ocaml
OCaml version 4.00.1
Findlib has been successfully loaded. Additional directives:
#require "package";; to load a package
#list;; to list the available packages
#camlp4o;; to load camlp4 (standard syntax)
#camlp4r;; to load camlp4 (revised syntax)
#predicates "p,q,...";; to set these predicates
Topfind.reset();; to force that packages will be reloaded
#thread;; to enable threads
Exception: Fl_package_base.No_such_package ("batteries", "").
此外,如果我在ocaml toplevel 中执行#list,我会得到
# #list;;
bigarray (version: [distributed with Ocaml])
camlp4 (version: [distributed with Ocaml])
camlp4.exceptiontracer (version: [distributed with Ocaml])
camlp4.extend (version: [distributed with Ocaml])
...
我看不到batteries 包裹。
有什么问题?
【问题讨论】:
标签: functional-programming ocaml ocaml-batteries