Создание xar исходная ошибка: никакой libcrypto?

Я создаю xar из источника (https://github.com/mackyle/xar). Это жалуется, что у меня нет OpenSSL, но у меня есть он (моя система установили openssl пакет, и у меня есть libcrypto.so.1.1.1 файл в моем каталоге lib).

Ниже сообщения об ошибках от./команда настройки при создании xar:

...
checking for OpenSSL_add_all_ciphers in -lcrypto... no
configure: error: Cannot build without libcrypto (OpenSSL)
...

Какова проблема с моими openssl библиотеками?

4
задан 10 January 2019 в 19:53

4 ответа

Установка libssl1.0-dev

sudo apt install libssl1.0-dev

Вывод после создания конфигураций:

checking for openssl/evp.h... yes
checking for OpenSSL_add_all_ciphers in -lcrypto... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for deflate in -lz... yes
checking bzlib.h usability... no
checking bzlib.h presence... no
checking for bzlib.h... no
checking for BZ2_bzCompress in -lbz2... no
configure: creating ./config.status
config.status: creating cfgoutputs.stamp
config.status: creating Makefile
config.status: creating include/xar.h
config.status: creating lib/Makefile.inc
config.status: creating lib/libxar.la.in
config.status: creating src/Makefile.inc
config.status: creating xar.spec
config.status: creating cfghdrs.stamp
config.status: creating include/config.h
0
ответ дан 1 December 2019 в 11:00

Чтобы смочь создать там дополнительны *-dev необходимые пакеты. Вероятно, libssl-dev в этом случае.

0
ответ дан 1 December 2019 в 11:00

Если необходимо скомпилировать его, то в данном случае необходимо установить libssl1.0-dev пакет.

Обратите внимание на то, что на Ubuntu 18.04 LTS Вы не можете установить обоих libssl-dev и libssl1.0-dev в то же время:

$ sudo apt install libssl-dev libssl1.0-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libssl-dev : Conflicts: libssl1.0-dev but 1.0.2n-1ubuntu5.2 is to be installed
 libssl1.0-dev : Conflicts: libssl-dev but 1.1.0g-2ubuntu4.3 is to be installed
E: Unable to correct problems, you have held broken packages.
0
ответ дан 1 December 2019 в 11:00

Для этого есть исправление, оно требует лишь небольших изменений. Вы можете прочитать об этом в выпуске Github .

Вот что вам нужно сделать: В configure.ac строка 332 имеет следующий вид:

AC_CHECK_LIB([crypto], [OpenSSL_add_all_ciphers], , [have_libcrypto="0"])

Замените ее на:

AC_CHECK_LIB([crypto], [OPENSSL_init_crypto], , [have_libcrypto="0"])

Обратите внимание, что единственное изменение касается второй части в скобках. Вы можете увидеть пример этого изменения здесь .

Затем запустите ./ autogen.sh . После этого вы можете продолжить установку с помощью make и sudo make install .

7
ответ дан 13 December 2019 в 03:20

Другие вопросы по тегам:

Похожие вопросы: