Я пытаюсь запустить make
с использованием зависимости от , ocamlfind
но когда я пытаюсь установить его, он дает мне циклическую зависимость и зависимость от ocaml-base-nox
.
Я понял, что могу получить ocaml-findlib
и libfindlib-ocaml
которые зависят друг от друга для одновременной установки одной командой:
sudo apt install ocaml-findlib ocaml-findlib libfindlib-ocaml ocaml-base-nox-4.01.0
Однако оставшаяся зависимость возвращает Package 'ocaml-base-nox-4.01.0' has no installation candidate
. По-видимому, он упоминает пару пакетов:
Package ocaml-base-nox-4.01.0 is a virtual package provided by:
ocaml-base-nox 4.01.0-3ubuntu3.1 [Not candidate version]
ocaml-base-nox 4.01.0-3ubuntu3 [Not candidate version]
Ответ, помогающий добиться прогресса в установке этого пакета, может быть полезен. В противном случае, ответ, показывающий мне, как заставить make распознать opam
установленный экземпляр, может помочь. Как видите, эта установка действительно сработала:
vagrant@vagrant-ubuntu-trusty-64:~/projectfolder$ opam list
# Installed packages for system:
base-bigarray base Bigarray library distributed with the OCaml compiler
base-threads base Threads library distributed with the OCaml compiler
base-unix base Unix library distributed with the OCaml compiler
conf-m4 1 Virtual package relying on m4
ocamlfind 1.7.3 A library manager for OCaml
Как видите, мне удалось успешно установить ocamlfind через opam. Интересно, что моя команда make, похоже, не распознает, ocamlfind
что я добавил в среду при установке с помощью opam
:
/path/to/some/folder/which/is/super/secret -O2 -d acommand file.f
[Error] Critical: Error starting ocamlopt process: Cannot run program
"ocamlfind" (in directory
"/path/to/some/folder/."): error=2, No such file
or directory (Cannot run program "ocamlfind" (in directory
"/path/to/some/folder/."): error=2, No such file
or directory)
make: *** [some/folder/timestamp] Error 113
решение1
Эта проблема возникает из-за того, что переменные среды не были настроены правильно. Для этого достаточно выполнить следующую команду:
eval `opam config env`