Ocaml OPAM包未运行

Ocaml OPAM包未运行,ocaml,opam,Ocaml,Opam,我已经安装了OPAM并运行了初始化,还更新了我的.bashrc代码。然后我安装了ocamlfind包,该包成功运行。但是当我尝试的时候 #use "topfind";; 我得到以下信息 Cannot find file topfind 我正在运行从Opensuse 12.2上的源代码构建的ocaml 4.00.1。如果未定义$ocaml\u TOPLEVEL\u路径,则必须定义它: export OCAML_TOPLEVEL_PATH=/home/%user%/.opam/%version%

我已经安装了OPAM并运行了初始化,还更新了我的.bashrc代码。然后我安装了ocamlfind包,该包成功运行。但是当我尝试的时候

#use "topfind";;
我得到以下信息

Cannot find file topfind

我正在运行从Opensuse 12.2上的源代码构建的ocaml 4.00.1。

如果未定义$ocaml\u TOPLEVEL\u路径,则必须定义它:

export OCAML_TOPLEVEL_PATH=/home/%user%/.opam/%version%/lib/toplevel
不要忘记更改
%user%
和您的编译器
%version%


在opam bugtracker上检查此项。

首先,您需要通过执行以下操作导出正确的环境变量:

eval `opam config env`
为了更有效,您应该将该行放在
~/.profile
(或
~/.bashrc
)中

然后,如果您正在使用系统编译器,则可以将这些行添加到
~/.ocamlinit

let () =
  try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
  with Not_found -> ()

在发布1.0之前,我们正在努力改进此过程。

如果您将toplevel作为

rlwrap-ocaml-I“$ocaml\u顶级路径”


您也可以尝试另一种顶层:
utop
(它存在于OPAM中)

您好,.OPAM目录中没有版本目录。只有
别名
存档
编译器
配置
描述
和其他类似的。我添加了一个小的修改,路径是
/home/%user%/.opam/system/lib/toplevel
,它工作了。谢谢。嗨,我没有安装rlwrap,我已经用默认的ocaml解释器安装了Emacs,所以我不想在tuareg中一直切换到“utop”。无论如何,谢谢。
rlwrap
不需要
ocaml-I“$ocaml\u TOPLEVEL\u PATH”
应该可以解决imho的问题。一旦我设置了
$ocaml\u TOPLEVEL\u PATH
变量,我就可以运行
ocaml
本身了。这也起到了作用。感谢OPAM,我以前从未让GODI运行过,而安装库曾经是一件痛苦的事,现在很容易!