Я использовал самосозданный Python для Solaris в течение многих лет без каких-либо проблем. Недавно мне нужно было установить более новую версию openssl, потому что существующая версия openssl (включенная в Solaris 10) больше не была полностью совместима с последними протоколами безопасности (т. Е. Я не могу ssh из окна Solaris).Не удалось создать Python на Solaris 10
Итак, я установил более новую версию openssl, сначала openssl-1.0.1l, а позже openssl-1.0.2. Используя новую версию openssl, я могу снова удалить ssh из окна Solaris.
Но Python puked, когда я запускаю скрипт Python с netowrk-x, что было хорошо с моей старой средой.
Я перекомпилировал Python (2.7.9) и выяснил, что я не могу создавать модули _hashlib и _ssl.
Проблема была довольно странной. Соответствующее сообщение об ошибке было:
ld: fatal: relocations remain against allocatable but non-writable section
(обобщённом версия журнала компиляции прилагается в конце текста)
Две библиотеки файлов, libssl.a и libcrypto.a, которые были сгенерированы в течение OpenSSL установка не создается должным образом (по крайней мере, для Solaris env).
Однако, я действительно не знаю, как исходить отсюда. Может ли кто-нибудь помочь мне решить эту проблему? Любые предложения были бы весьма признательны.
Спасибо! Aki-
% make
running build
running build_ext
warning: ldd: /usr/local/lib/libreadline.so: is not executable
building dbm using ndbm
building '_ssl' extension
gcc -fPIC -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/usr/local/include -I/home/neko/gnu/Python-2.7.9/Include -I/home/neko/gnu/Python-2.7.9 -c /home/neko/gnu/Python-2.7.9/Modules/_ssl.c -o build/temp.solaris-2.10-sun4u.32bit-2.7/home/neko/gnu/Python-2.7.9/Modules/_ssl.o
gcc -shared build/temp.solaris-2.10-sun4u.32bit-2.7/home/neko/gnu/Python-2.7.9/Modules/_ssl.o -L/usr/local/ssl/lib -L/usr/local/lib -lssl -lcrypto -o build/lib.solaris-2.10-sun4u.32bit-2.7/_ssl.so
Text relocation remains referenced
against symbol offset in file
<unknown> 0x1198 /usr/local/ssl/lib/libssl.a(s3_lib.o)
<unknown> 0x119c /usr/local/ssl/lib/libssl.a(s3_lib.o)
<unknown> 0x11a0 /usr/local/ssl/lib/libssl.a(s3_lib.o)
....
BN_set_bit 0x1a90 /usr/local/ssl/lib/libcrypto.a(bn_gf2m.o)
BN_set_bit 0x1c44 /usr/local/ssl/lib/libcrypto.a(bn_gf2m.o)
<unknown> 0x4 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0xc /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x20 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x1b0 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x1c0 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x1cc /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x464 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x46c /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x4f0 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
<unknown> 0x4f4 /usr/local/ssl/lib/libcrypto.a(bn_ctx.o)
ld: fatal: relocations remain against allocatable but non-writable sections
collect2: ld returned 1 exit status
building '_hashlib' extension
gcc -fPIC -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -I/usr/local/include -I/home/neko/gnu/Python-2.7.9/Include -I/home/neko/gnu/Python-2.7.9 -c /home/neko/gnu/Python-2.7.9/Modules/_hashopenssl.c -o build/temp.solaris-2.10-sun4u.32bit-2.7/home/neko/gnu/Python-2.7.9/Modules/_hashopenssl.o
gcc -shared build/temp.solaris-2.10-sun4u.32bit-2.7/home/neko/gnu/Python-2.7.9/Modules/_hashopenssl.o -L/usr/local/ssl/lib -L/usr/local/lib -lssl -lcrypto -o build/lib.solaris-2.10-sun4u.32bit-2.7/_hashlib.so
Text relocation remains referenced
against symbol offset in file
<unknown> 0x6a0 /usr/local/ssl/lib/libcrypto.a(tasn_fre.o)
<unknown> 0x6a4 /usr/local/ssl/lib/libcrypto.a(tasn_fre.o)
<unknown> 0x6a8 /usr/local/ssl/lib/libcrypto.a(tasn_fre.o)
....
i2d_ASN1_TYPE 0x6dc /usr/local/ssl/lib/libcrypto.a(a_strex.o)
i2d_ASN1_TYPE 0x70c /usr/local/ssl/lib/libcrypto.a(a_strex.o)
i2d_ASN1_TYPE 0x8d0 /usr/local/ssl/lib/libcrypto.a(asn1_gen.o)
i2d_ASN1_TYPE 0x4ac /usr/local/ssl/lib/libcrypto.a(v3_conf.o)
ld: fatal: relocations remain against allocatable but non-writable sections
collect2: ld returned 1 exit status
building 'dbm' extension
gcc -fPIC -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DHAVE_NDBM_H -I. -IInclude -I./Include -I/usr/local/include -I/home/neko/gnu/Python-2.7.9/Include -I/home/neko/gnu/Python-2.7.9 -c /home/neko/gnu/Python-2.7.9/Modules/dbmmodule.c -o build/temp.solaris-2.10-sun4u.32bit-2.7
....
Failed to build these modules:
_curses _curses_panel _hashlib _ssl