Re: подмена zlib во время компиляции (не получается, ldd показывает зависимость от системной libz)

Maxim Dounin mdounin на mdounin.ru
Пн Мар 4 13:22:53 UTC 2019


Hello!

On Sun, Mar 03, 2019 at 08:48:08PM +0500, Илья Шипицин wrote:

> привет,
> 
> указываю --with-zlib=%{_builddir}/%{name}-%{version}/zlib-${ZLIB}
> 
> (хотелось статически собрать nginx с определенной версией zlib).
> все компилируется, но ldd показывает зависимость от
> 
> libz.so.1 => /lib64/libz.so.1
> 
> 
> (в случае, например, с openssl все работало, при указании --with-openssl в
> выводе ldd нет зависимости от библиотек openssl).
> 
> есть какое-то ноу хау с zlib ?

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

На FreeBSD у ldd есть опция "-a", которая позволяет увидеть всю 
структуру зависимостей.  На Linux'е, судя по всему, аналога нет, и 
нужно смотреть руками в "objdump -p file | grep NEEDED" или 
"readelf -d file | grep NEEDED".

Ну и имеет смысл посмотреть в "nginx -V", чтобы убедиться, что 
параметр "--with-zlib" таки был передан в configure.

-- 
Maxim Dounin
http://mdounin.ru/


Подробная информация о списке рассылки nginx-ru