当我尝试在 OCaml 的顶级 utop
中加载文件extLib.cma
时,出现以下错误:
Cannot find file extLib.cma
但是,如果我尝试使用 opam 安装它,我会得到以下说明:
Package extlib is already installed.
我做错了什么?
如果你的目的是交互式地使用 extLib 的一些函数,那么
$ utop
μ> #require "extlib";;
μ> ExtString.String.explode "ExtLib";;
- : char list = [E; x; t; L; i; b]
如果是其他东西,那么您可能需要指定 extLib.cma
的确切路径,并且类似于以下内容的内容应该有效:
$ utop
μ> #load "/Users/xxx/.opam/4.02.3/lib/extlib/extLib.cma";;
其中/Users/xxx
是您的主目录/文件夹; 4.02.3
是我当前的编译器版本,通过opam switch
设置(IIRC,默认情况下system
)。