camlzip: "Этот пакет опирается на внешние (системные) зависимости, которые могут отсутствовать".
Я пытаюсь установить camlzip (пакет OCaml, содержащийся в opam), но когда я запускаю opam install camlzip
Я получаю это:
The following actions will be performed:
∗ install camlzip 1.05
=-=- Gathering sources =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[camlzip] Archive in cache
=-=- Processing actions -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
[ERROR] The compilation of camlzip failed at "make all".
Processing 1/1: [camlzip: ocamlfind remove]
#=== ERROR while installing camlzip.1.05 ======================================#
# opam-version 1.2.2
# os linux
# command make all
# path /home/mttjone/.opam/system/build/camlzip.1.05
# compiler system (4.02.3)
# exit-code 2
# env-file /home/mttjone/.opam/system/build/camlzip.1.05/camlzip-3552-d2d111.env
# stdout-file /home/mttjone/.opam/system/build/camlzip.1.05/camlzip-3552-d2d111.out
# stderr-file /home/mttjone/.opam/system/build/camlzip.1.05/camlzip-3552-d2d111.err
### stdout ###
# ocamlc -g -c -ccopt -g -ccopt -I/usr/local/include zlibstubs.c
### stderr ###
# [...]
# zlibstubs.c:151: warning: comparison between pointer and integer
# zlibstubs.c: In function ‘camlzip_inflateEnd’:
# zlibstubs.c:165: warning: implicit declaration of function ‘inflateEnd’
# zlibstubs.c:165: error: ‘z_stream’ undeclared (first use in this function)
# zlibstubs.c:165: error: expected expression before ‘)’ token
# zlibstubs.c:165: error: invalid operands to binary * (have ‘int *’ and ‘int *’)
# zlibstubs.c:165: error: called object ‘<erroneous-expression>’ is not a function
# zlibstubs.c: In function ‘camlzip_update_crc32’:
# zlibstubs.c:172: warning: implicit declaration of function ‘crc32’
# make: *** [zlibstubs.o] Error 2
=-=- Error report -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The following actions failed
∗ install camlzip 1.05
No changes have been performed
=-=- camlzip.1.05 troobleshooting -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=> This package relies on external (system) dependencies that may be missing. `opam depext camlzip.1.05' may help you find the correct installation for your system.
Теперь я думаю, что ясно, что в нем нет фактически отсутствующих зависимостей, но я все равно могу предложить предложенную команду и она сказала, что не пропустила никаких зависимостей.
Предположительно проблема заключается в zlibstubs.c
файл, но я не совсем уверен, что происходит.
Кто-нибудь может помочь мне?
1 ответ
TL;DR
opam install depext
opam depext camlzip
Пояснения
opam install depext
Команда установит opam
Плагин, который способен устанавливать внешние зависимости. Это добавит depext
командовать opam
инструмент.
opam depext camlzip
установит внешние зависимости, используя системный менеджер пакетов. Если ваш менеджер пакетов не поддерживается, то команда не будет выполнена. В этом случае вы можете использовать
opam list --external --required-by=camlzip
чтобы получить все внешние зависимости camlzip
для всех дистрибутивов и систем управления пакетами, известных сопровождающему пакета. Из этой информации вы можете вывести названия пакетов для вашего дистрибутива. Как только вы добьетесь успеха, это также хорошая идея, чтобы передать эту информацию обратно сопровождающему.