Estoy intentando ejecutar make
una dependencia de ocamlfind
pero cuando intento instalarla, me da una dependencia circular y una dependencia de ocaml-base-nox
.
Descubrí que podía obtenerlos ocaml-findlib
y libfindlib-ocaml
que dependían unos de otros para instalarlos al mismo tiempo con un comando:
sudo apt install ocaml-findlib ocaml-findlib libfindlib-ocaml ocaml-base-nox-4.01.0
Sin embargo, la dependencia restante regresa Package 'ocaml-base-nox-4.01.0' has no installation candidate
. Aparentemente menciona un par de paquetes:
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]
Puede resultar útil una respuesta que ayude a avanzar en la instalación de ese paquete. De lo contrario, puede ser útil que me revele cómo hacer que Make reconozca la opam
instancia instalada. Como puede ver, esa instalación realmente funcionó:
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
Como puede ver, pude instalar ocamlfind exitosamente a través de opam. Curiosamente, mi comando make no parece reconocer ocamlfind
qué agregué al entorno al instalar con 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
Respuesta1
Este problema se produce porque las variables de entorno no se configuraron correctamente. Para hacer esto, debería ser suficiente ejecutar el siguiente comando:
eval `opam config env`