首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对本地目录使用ocamlfind

对本地目录使用ocamlfind
EN

Stack Overflow用户
提问于 2015-10-14 21:51:04
回答 2查看 437关注 0票数 0

因为我在工作站上没有超级用户访问权限,所以我在本地将oUnit安装到~/ounit中。如果我运行以下命令,我可以在解释器中加载模块

代码语言:javascript
复制
ocaml -I ~/ounit/oUnit

现在我想运行测试,所以我尝试编译它:

代码语言:javascript
复制
ocamlfind ocamlc -o test -package oUnit -I ~/ounit/oUnit -linkpkg -g foo.ml test.ml

不幸的是,ocamlfind不能检测到oUnit包

代码语言:javascript
复制
ocamlfind: Package `oUnit' not found

我做错了什么?

EN

回答 2

Stack Overflow用户

发布于 2015-10-15 22:57:14

你可以很容易的在没有root的情况下安装OPAM。例如,我的Travis CI脚本将OPAM安装到它们的非root容器系统上,如下所示:

代码语言:javascript
复制
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二进制文件可以在比官方二进制文件更广泛的系统上运行)

票数 1
EN

Stack Overflow用户

发布于 2015-10-14 22:58:49

解决方案是使用OCAMLPATH

代码语言:javascript
复制
OCAMLPATH=~/ounit ocamlfind ocamlc -o test -package oUnit -I ~/ounit/oUnit -linkpkg -g foo.ml test.ml
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33127217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档