Linux OCaml编译错误:/usr/bin/ld:找不到-lstr

Linux OCaml编译错误:/usr/bin/ld:找不到-lstr,linux,ubuntu,ocaml,nltk,Linux,Ubuntu,Ocaml,Nltk,我试图在Ubuntu 64机器上编译Ocaml库的源代码 我已经安装了OCaml(v3.12.1),使用sudo-apt-get-install-OCaml 在解压源代码的终端上运行“make”命令时出现问题,OCaml返回错误: /user/bin/ld: cannot find -lstr collect2: error: ld returned 1 exit status makefile正在生成以下两个命令: ocamldep *.ml > .depend 运行时没有错误 o

我试图在Ubuntu 64机器上编译Ocaml库的源代码

我已经安装了OCaml(v3.12.1),使用
sudo-apt-get-install-OCaml

在解压源代码的终端上运行“make”命令时出现问题,OCaml返回错误:

/user/bin/ld: cannot find -lstr
collect2: error: ld returned 1 exit status
makefile正在生成以下两个命令:

 ocamldep *.ml > .depend
运行时没有错误

ocamlc-g-custom-o megam str.cma-cclib-lstr bigarray.cma-cclib-lbigarray unix.cma-cclib-lunix-I/usr/lib/ocaml/caml fastdot_c.c fastdot.cmo intHashtbl.cmo arry.cmo util.cmo data.cmo bitvec.cmo cg.cmo wsemlm.cmo bfgs.cmo pa.cmo perceptron.cmo radapt.cmo kernelmap.cmo abffs.cmo main.cmo

运行时抛出上面的错误

我尝试从compile命令中删除-lstr,它停止抛出该特定错误,但开始抛出另一个错误(
引用未定义的全局“Bigarray”
),这让我觉得这可能是我在OCaml安装过程中遗漏的东西,需要设置的某种路径或引用

任何帮助都是非常感谢的,即使这只是一个黑暗中的一个镜头,因为我真的很难想出任何东西

允许我编译时不出错。归结起来是:

locate libcamlstr
这告诉我libcamlstr可以在
/usr/lib/ocaml
(YMMV)中找到,所以我:

cd /usr/lib/ocaml
sudo ln -s libcamlstr.a libstr.a
然后我就可以编译这个项目了:

cd /usr/local/src/cil
make clean && ./configure && make

请参阅OCaml错误跟踪器中此错误的最后一条注释:


您可以从

-lstr

-lcamlstr