我遇到了一个问题,安装了一个依赖于ocamlfind的软件包但是我得到了一个ocamlfind:命令时找不到错误。
我已经使用ocaml包管理器安装了ocamlfind,并尝试使用“opam重新安装ocamlfind”重新安装。
我还尝试了'eval opam config env'命令来查看是否更新了我的bin。
有没有人遇到类似的问题/知道这可能是由什么引起的
运行make时的输出:
make
ocamlfind ocamlc -pp "camlp4o -I lib/dcg -I lib/ipp pa_dcg.cmo pa_ipp.cmo" -w usy -thread -I lib -I lib/dcg -I lib/ipp -c semantics.ml
/bin/sh: ocamlfind: command not found
尝试ocamlfind时的输出
ocamlfind
-bash: ocamlfind: command not found
ocaml已安装
opam install ocamlfind
[NOTE] Package ocamlfind is already installed (current version is 1.5.5).
并在运行eval命令时
eval 'opam config env'
CAML_LD_LIBRARY_PATH="/home/centos/.opam/system/lib/stublibs:/usr/lib64/ocaml/stub libs"; export CAML_LD_LIBRARY_PATH;
MANPATH="/home/centos/.opam/system/man:"; export MANPATH;
PERL5LIB="/home/centos/.opam/system/lib/perl5"; export PERL5LIB;
OCAML_TOPLEVEL_PATH="/home/centos/.opam/system/lib/toplevel"; export OCAML_TOPLEVEL_PATH;
PATH="/home/centos/.opam/system/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/centos/.local/bin:/home/centos/bin"; export PATH;
我在运行centos 7的服务器上
这个命令
eval 'opam config env'
几乎肯定是一个错字,应该是
eval `opam config env`
虽然使用$(...)
而不是现代的等价物,并避免这种字体事实混乱
eval $(opam config env)
这就是说,只需在当前shell会话中设置环境变量(并导出它们以供此shell会话运行的进程使用)。
因此,需要在需要这些设置的每个shell会话中运行(包括makefile的每一行,如果运行make的环境尚未设置和导出它们,则需要设置它们的每一行)。
试试'''sudo apt-get install ocaml-findlib'''