我正在尝试从源代码构建coq-8.4pl4,但遇到错误消息“致命错误:无法加载共享库dllcoqrun原因:dllcoqrun.so:无法打开共享库文件:无此类文件或目录”。 虽然我知道应该安装dllcoqrun.so,但是什么是dllcoqrun.so以及如何安装?
我正在使用ubuntu 18.04,ocaml-4.00.0和camlp5-rel707
COQMKTOP -o bin/coqtop.byte
File "lib/lib.cma(Errors)", line 1:
Warning 31: files lib/lib.cma(Errors) and /usr/local/lib/ocaml/compiler-libs/ocamlbytecomp.cma(Errors) both define a module named Errors
File "pretyping/pretyping.cma(Matching)", line 1:
Warning 31: files pretyping/pretyping.cma(Matching) and /usr/local/lib/ocaml/compiler-libs/ocamlcommon.cma(Matching) both define a module named Matching
File "interp/interp.cma(Lexer)", line 1:
Warning 31: files interp/interp.cma(Lexer) and /usr/local/lib/ocaml/compiler-libs/ocamlcommon.cma(Lexer) both define a module named Lexer
COQC -nois theories/Init/Notations.v
Fatal error: cannot load shared library dllcoqrun
Reason: dllcoqrun.so: cannot open shared object file: No such file or directory
Makefile.build:494: recipe for target 'theories/Init/Notations.vo' failed
make[1]: *** [theories/Init/Notations.vo] Error 2
答案 0 :(得分:0)
仅作记录,Coq开发团队会维护软件包管理说明,以在其opam
软件包套件中构建Coq的旧版本。
本节中的实验是使用ubuntu的最新版本完成的(更确切地说,我使用了今天下载的docker映像)。我只需要执行以下步骤(前四个步骤是作为超级用户执行的):
apt-get -q -y update
apt-get -q -y dist-upgrade
apt-get -q -y install m4 rsync git #not sure this is needed
apt-get -q -y --no-install-recommends install ocaml-nox opam aspcud
以普通用户身份执行以下操作:
opam init -a
opam switch 4.00.0
opam install coq.8.4.5
最后一条命令会问一个问题,您应该回答y
。
这将创建可在目录$HOME/.opam/4.00.0/bin
中找到的coq的安装。为了确保此版本在当前Shell中可用,您应该执行以下行:
评估$(opam config env)
我不记得如何安装opam
版本2,但这是我的计算机上运行的版本。因此,为了记录在案,这是我安装了稍有不同版本的coq.8.4的工作。
opam switch create for-coq.8.4 ocaml-base-compiler.4.00.0
opam repo add coq-core-dev https://coq.inria.fr/opam/core-dev
opam install coq.8.4.dev
如果您不愿意使用opam
,则实际上可以从following file收集相关信息。我刚刚尝试过,并且对我有用,但是我在Fedora机器上,opam
已经安装。
请查看here,以获取有关opam
的更多信息。