因为我在工作站上没有超级用户访问权限,所以我在本地将oUnit安装到~/ounit中。如果我运行以下命令,我可以在解释器中加载模块
ocaml -I ~/ounit/oUnit现在我想运行测试,所以我尝试编译它:
ocamlfind ocamlc -o test -package oUnit -I ~/ounit/oUnit -linkpkg -g foo.ml test.ml不幸的是,ocamlfind不能检测到oUnit包
ocamlfind: Package `oUnit' not found我做错了什么?
发布于 2015-10-15 22:57:14
你可以很容易的在没有root的情况下安装OPAM。例如,我的Travis CI脚本将OPAM安装到它们的非root容器系统上,如下所示:
wget https://downloads.sourceforge.net/project/zero-install/0install/2.8/0install-linux-x86_64-2.8.tar.bz2
tar xjf 0install-linux-x86_64-2.8.tar.bz2
cd 0install-linux-x86_64-2.8
./install.sh home
export PATH=$HOME/bin:$PATH
0install add opam http://tools.ocaml.org/opam.xml(通过0install安装的好处是,你会自动获得opam的更新,0install二进制文件可以在比官方二进制文件更广泛的系统上运行)
发布于 2015-10-14 22:58:49
解决方案是使用OCAMLPATH
OCAMLPATH=~/ounit ocamlfind ocamlc -o test -package oUnit -I ~/ounit/oUnit -linkpkg -g foo.ml test.mlhttps://stackoverflow.com/questions/33127217
复制相似问题