Timeweb
PostHeaderIcon

version ZLIB_1.2.9 required by /usr/local/lib/libpng16.so.16 not found

ОС FreeBSD 10.x

После очередного обновления пакетов получил вот такую вот ошибку:

# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20131226/gd.so' - /lib/libz.so.6: version ZLIB_1.2.9 required by /usr/local/lib/libpng16.so.16 not found in Unknown on line 0

Посмотреть подробную информацию можно так:

# objdump -x /lib/libz.so.6 | grep ZLIB
2 0x00 0x07e5cf30 ZLIB_1.2.4.0
3 0x00 0x053ecdd0 ZLIBprivate_1.0
ZLIB_1.2.4.0
4 0x00 0x07e5c230 ZLIB_1.2.7.0
ZLIB_1.2.4.0
5 0x00 0x07e5c231 ZLIB_1.2.7.1
ZLIB_1.2.7.0
ZLIB_1.2.4.0

# objdump -x /usr/local/lib/libpng16.so | grep ZLIB
0x0827e5c9 0x00 06 ZLIB_1.2.9
0x07e5cf30 0x00 04 ZLIB_1.2.4.0

т.е. libpng хочет ZLIB_1.2.9, которого нет в /lib/libz.so

Существует два варианта решения проблемы:
1. Обновить ОС FreeBSD 10.х до 11
2. Откатить версию libpng на предыдущую:

Текущая версия libpng

# pkg which /usr/local/lib/libpng16.so
/usr/local/lib/libpng16.so was installed by package png-1.6.34

Смотрим список предыдущих версий:

# ls -l /var/cache/pkg/png-1.6*
-rw-r--r--  1 root  wheel  278392 Mar 23  2017 /var/cache/pkg/png-1.6.29-42589b370b.txz
lrwxr-xr-x  1 root  wheel      25 Apr  3  2017 /var/cache/pkg/png-1.6.29.txz -> png-1.6.29-42589b370b.txz
-rw-r--r--  1 root  wheel  280816 May 10 04:07 /var/cache/pkg/png-1.6.34-3b6e031070.txz
lrwxr-xr-x  1 root  wheel      25 Jul 28 11:02 /var/cache/pkg/png-1.6.34.txz -> png-1.6.34-3b6e031070.txz

 

Ставим предыдущую версию:
# pkg install /var/cache/pkg/png-1.6.29.txz