Ocaml Opam安装camlbz2

Ocaml Opam安装camlbz2,ocaml,opam,Ocaml,Opam,安装camlbz2时出错 %opam安装camlbz2 ... ... . checking bzlib.h usability... no . checking bzlib.h presence... no . checking for bzlib.h... no awk:第1行:正则表达式编译失败(语法错误^*或^+) ^+ 配置:错误:找不到“opam安装camlbz2”失败。 我找不到任何东西可以让opam安装“libbz2”之类的东西,有什么建议吗?您需要安装libbz2 C库。因此

安装camlbz2时出错

%opam安装camlbz2

...
...
. checking bzlib.h usability... no
. checking bzlib.h presence... no
. checking for bzlib.h... no
awk:第1行:正则表达式编译失败(语法错误^*或^+) ^+ 配置:错误:找不到“opam安装camlbz2”失败。
我找不到任何东西可以让opam安装“libbz2”之类的东西,有什么建议吗?

您需要安装libbz2 C库。因此,请检查您的软件包系统并安装它

在Debian中,它是包“libbz2 dev”(因此sudo apt get install libbz2 dev)

OPAM(目前)只处理OCaml源程序包

这里,您的问题来自OCaml包的
/configure
脚本,该脚本检测到系统包丢失,而不是OCaml包(您可以看到它搜索了扩展名为
.h
的文件,即C include文件)

要解决问题,您需要安装此系统包。正如Ontologiae所说,缺少的包与
libbz2
库有关,并且包含文件通常在开发包中提供,因此您可能应该尝试使用操作系统的系统安装程序安装
libbz2 dev
。此软件包不在OCaml中,因此不会有干扰OPAM安装的风险


请注意,由于您使用
opam config-env
来设置OCaml环境,即使您使用系统安装程序安装OCaml软件包,也不会与由opam安装在homedir中的软件包发生不良交互。

但我使用的是opam,如果我无法获得,事情会变得一团糟。我需要opam为我安装此软件包,有什么想法吗?OPAM只处理ocaml的东西,就像rubygems处理ruby的东西,或者haskell的阴谋集团一样。libbz2是一个C库,您应该能够手动或使用系统本机包管理器安装它,而不会干扰OPAM。