为什么ocamlfind找不到已安装的库(camlp4)

为什么ocamlfind找不到已安装的库(camlp4),ocaml,ocamlfind,Ocaml,Ocamlfind,我安装了一个OCaml库。为了证明我有这个: $ ~/.opam/bin/opam install camlp4 [NOTE] Package camlp4 is already installed (current version is 4.02+system). 这是: $ ls `ocamlc -where`/camlp4* Camlp4.cmi Camlp4Bin.cmx Camlp4Parsers Camlp4Top.cmi camlp4fulllib.a

我安装了一个OCaml库。为了证明我有这个:

$ ~/.opam/bin/opam install camlp4
[NOTE] Package camlp4 is already installed (current version is 4.02+system).
这是:

$ ls `ocamlc -where`/camlp4*
Camlp4.cmi     Camlp4Bin.cmx  Camlp4Parsers   Camlp4Top.cmi      camlp4fulllib.a     camlp4lib.a     camlp4o.cma    camlp4orf.cma   camlp4prof.cmx  camlp4rf.cma
Camlp4Bin.cmi  Camlp4Bin.o    Camlp4Printers  Camlp4Top.cmo      camlp4fulllib.cma   camlp4lib.cma   camlp4of.cma   camlp4prof.cmi  camlp4prof.o
Camlp4Bin.cmo  Camlp4Filters  Camlp4Top       Camlp4_config.cmi  camlp4fulllib.cmxa  camlp4lib.cmxa  camlp4oof.cma  camlp4prof.cmo  camlp4r.cma
但当我尝试这个时,它无法识别文件

$ ocamlfind query camlp4
ocamlfind: Package `camlp4' not found
我如何启用它

我的
~/.ocamlinit
如下所示:

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

很可能您忘记使用激活opam环境

 eval $(opam config env) 

指挥部。您正试图使用系统编译器进行编译,即系统包管理器安装的编译器。ocamlinit是顶级
ocaml
执行的初始文件,与
ocamlfind
无关。