Переименовывает ли Canonical символы в своей пакетной версии openssl, и если да, то с какой целью? Когда я компилирую openssl-1.0.0e.tar.gz (загруженный непосредственно с openssl.org) с нуля, я вижу необходимый символ, но Python (и я), похоже, не может найти его в упакованной версии.
Читайте дальше для получения дополнительной информации о том, как я диагностировал эту проблему...
Я пытаюсь скомпилировать Python 2.6.1 в Ubuntu 11.10 и получаю сообщение об ошибке выше. Причина, по которой я использую этот старый Python, заключается в том, что я пытаюсь сделать свою установку Ubuntu на 100% совместимой с производственной системой для целей разработки.
При выполнении
strace -feopen make -j4 |& grep "libssl"
Я вижу, что использую многообещающий файл:
[pid 22614] open("/usr/lib/x86_64-linux-gnu//libssl.so", O_RDONLY) = 7
При запуске nm этот файл не имеет символов. Однако файл .a имеет аналогичный:
0000000000000030 T SSLv23_метод
Пакет libssl1.0.0-dbg устанавливается через synaptic, однако, когда я перечисляю установленные файлы для этого пакета, все, что я вижу, это «Список установленных файлов доступен только для установленных пакетов», что явно является ошибкой Ubuntu. Поэтому я не уверен, как я должен проверять, какие символы присутствуют в .so.
Однако я подозреваю, что они в любом случае переименовали SSLv2_method в SSLv23_method.
Как продолжить, чтобы выяснить статус Ubuntu openssl-1.0.0?
OPENSSL_NO_SSL3
. - person jww   schedule 03.08.2016