LINUX.ORG.RU
решено ФорумAdmin

сборка php и кастомный ссл

 , ,


0

1

значит есть старый альт 8. в нем openssl 1.0.2 в системе удален devel пакет openssl

хочу собрать openssl 1.1.1h и пхп с его использованием. при этом чтобы все остальные компаненты системы небыли затронуты.

собирал ссл в папку /opt/openssl

собирая пхп так

env PKG_CONFIG_PATH=/opt/openssl/lib/pkgconfig ./configure –prefix=/opt/php/7.3
–with-openssl=/opt/openssl
–with-curl=/opt/curl
–with-zlib-dir –with-freetype-dir
–enable-cgi
–enable-mbstring
–with-libxml-dir=/usr
–enable-soap –enable-calendar
–with-zlib
–with-gd
–disable-rpath
–enable-inline-optimization
–with-bz2
–enable-sockets –enable-sysvsem
–enable-sysvshm
–enable-pcntl –enable-mbregex
–with-mhash
–enable-zip
–with-pcre-regex
–enable-mysqlnd
–with-pdo-mysql –with-mysqli
–with-pgsql=/opt/libpq –with-pdo-pgsql=/opt/libpq
–with-jpeg-dir=/usr
–with-png-dir=/usr
–with-libxml-dir=/usr
–enable-exif –enable-dba
–with-gettext
–enable-shmop
–enable-sysvmsg
–enable-wddx
–with-kerberos
–enable-bcmath –enable-intl
–with-readline && make

в итоге

ldd ./sapi/cli/php|grep -i ssl
        libcrypto.so.1.1 => /opt/openssl/lib/libcrypto.so.1.1 (0x00007f0e20c6c000)
        libssl.so.1.1 => /opt/openssl/lib/libssl.so.1.1 (0x00007f0e209d8000)
        libssl.so.10 => /lib64/libssl.so.10 (0x00007f0e1cead000)

как эту заразу отучить видеть /lib64/libssl.so.10 при линковке.

продолжение

спрятал системную libssl библиотеку временно. сбросил кэш ld

 ldconfig -v|grep 'ssl\|\/lib64'
/opt/openssl/lib:
        libssl.so.1.1 -> libssl.so.1.1
/lib64:
        libevent_openssl-2.0.so.5 -> libevent_openssl-2.0.so.5.1.10
/usr/lib64:
        libssl3.so -> libssl3.so

собираю пхп

make
Generating phar.phar
/usr/local/src/openssl/php-7.3.24/sapi/cli/php: error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory
make: *** [ext/phar/phar.phar] Ошибка 127

Ответ на: комментарий от mky

Спасибо за наводящий вопрос. проверил еще аз и нашел проблему. бесполезно линки удалять и библиотекам суффиксы рисовать. ld линки создает сам (интересно откуда он берет инфу для какой либы какой линк создавать), а суффиксы игнорирует.

перенес либы в другую папку отчистил кэш ld и все корректно собралось.

xoy ()