LINUX.ORG.RU

[Gentoo] libpng 1.4 -> libpng-1.5.5

 


0

2

Собственно обновился до media-libs/libpng-1.5.5 с 1.4.8-r1 и после запуска revdep-rebuild при сборке пакетов с не удовлетворёнными зависимостями получаю эту ошибку, почти на всех пакетах из списка, вопрос почему он тянется -lpng14 и -I/usr/include/libpng14 вместе с -I/usr/include/libpng15, хотя ни include ни библиотеки libpng14.so.0 или чего-либо похожего в системе нет.

Так же не помогает lafilefixer, хотя дело всё же не в la файлах

lafilefixer --justfixit

Как исправить, вот часть лога с ошибкой при сборке dev-cpp/libsexymm-0.1.9

...
 x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"libsexymm\" -I../../libsexy -I../../libsexy -pthread -I/usr/include/gtkmm-2.4 -I/usr/lib64/gtkmm-2.4/include -I/usr/include/atkmm-1.6 -I/usr/include/giomm-2.4 -I/usr/lib64/giomm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/lib64/pangomm-1.4/include -I/usr/include/gtk-2.0 -I/usr/include/gtk-unix-print-2.0 -I/usr/include/gdkmm-2.4 -I/usr/lib64/gdkmm-2.4/include -I/usr/include/atk-1.0 -I/usr/include/glibmm-2.4 -I/usr/lib64/glibmm-2.4/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/cairomm-1.0 -I/usr/lib64/cairomm-1.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/libdrm -I/usr/lib64/gtk-2.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng14 -I/usr/include/libxml2 -O2 -march=core2 -pipe -MT wrap_init.lo -MD -MP -MF .deps/wrap_init.Tpo -c wrap_init.cc  -fPIC -DPIC -o .libs/wrap_init.o
/bin/sh ../../libtool --tag=CXX --mode=link x86_64-pc-linux-gnu-g++  -O2 -march=core2 -pipe  -Wl,-O1 -Wl,--as-needed -o libsexymm.la -rpath /usr/lib64 -version-info 2:1:0 icon-entry.lo spell-entry.lo tooltip.lo tree-view.lo url-label.lo wrap_init.lo  -pthread -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lsexy -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lm -lcairo -lpng14 -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lxml2
x86_64-pc-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/crtbeginS.o  .libs/icon-entry.o .libs/spell-entry.o .libs/tooltip.o .libs/tree-view.o .libs/url-label.o .libs/wrap_init.o  -Wl,--as-needed -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 /usr/lib64/libcairomm-1.0.so /usr/lib64/libsigc-2.0.so -lsexy /usr/lib64/libgtk-x11-2.0.so /usr/lib64/libgdk-x11-2.0.so /usr/lib64/libatk-1.0.so /usr/lib64/libgio-2.0.so -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpng14 -lpango-1.0 /usr/lib64/libfreetype.so /usr/lib64/libfontconfig.so /usr/lib64/libgobject-2.0.so /usr/lib64/libgmodule-2.0.so /usr/lib64/libgthread-2.0.so -lrt /usr/lib64/libglib-2.0.so /usr/lib64/libxml2.so -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crtn.o  -march=core2 -Wl,-O1 -pthread -Wl,-soname -Wl,libsexymm.so.2 -o .libs/libsexymm.so.2.0.1
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lpng14
collect2: ld returned 1 exit status
make[5]: *** [libsexymm.la] Ошибка 1
make[5]: Выход из каталога `/var/tmp/portage/dev-cpp/libsexymm-0.1.9/work/libsexymm-0.1.9/libsexy/libsexymm'
make[4]: *** [all-recursive] Ошибка 1
make[4]: Выход из каталога `/var/tmp/portage/dev-cpp/libsexymm-0.1.9/work/libsexymm-0.1.9/libsexy/libsexymm'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Выход из каталога `/var/tmp/portage/dev-cpp/libsexymm-0.1.9/work/libsexymm-0.1.9/libsexy'
make[2]: *** [all] Ошибка 2
make[2]: Выход из каталога `/var/tmp/portage/dev-cpp/libsexymm-0.1.9/work/libsexymm-0.1.9/libsexy'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Выход из каталога `/var/tmp/portage/dev-cpp/libsexymm-0.1.9/work/libsexymm-0.1.9'
make: *** [all] Ошибка 2
emake failed
 * ERROR: dev-cpp/libsexymm-0.1.9 failed (compile phase):
 *   compile failure
...

UPD:
не хотелось бы прибегать к кардинальному решению

emerge -ae world
или к не верному способу устранения проблемы, но не причины
ln -s /usr/lib64/libpng15.so /usr/lib64/libpng14.so

Ведь configure перед сборкой пакету при проверке зависимостей отрабатывает нормально, проблема лишь на этапе сборке...

★★★★★

Последнее исправление: kostik87 (всего исправлений: 1)

Нужно поставить libpng-1.4.* в другой слот (ну или совсем снести и замаскировать libpng-1.5)

fads ★★
()
Ответ на: комментарий от fads

Это не решение проблемы, большая часть пакетов нормально пересобралась с новой версией libpng, проблемы только у 13 пакетов, в новый слот ставить не хочу, да и не поставится, только замена (downgrade) версии libpng.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от ZuBB

Вы можете подсказать почему при сборке тянется -I/usr/include/libpng14, хотя его нет, а немного выше требуется -I/usr/include/libpng15, почему ?

Все же я отчасти поступил не правильно, сделал символьную ссылку с libpng15 на libpng14 и собрал пакеты, в частности проблемы были при сборке libsexymm, после создания символьной ссылки он собрался и слинковался с libpng15.so.15.

ldd /usr/lib64/libsexymm.so.2.0.1 | grep png
	libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x00007f05ee659000)

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

Предлагаю просто заменить во всех la файлах -lpng14 на -lpng15. Способ на ваш выбор.

ungifted
()

опять? было же уже 100500 раз
у меня так:
была 1.4, потом поставилась 1.5
снёс 1.4, а 1.5 таки имеет lpng14 ---> [gentoo][опрос]Сборка системы на новом GCC (комментарий)
и не надо держать никаких миллионов версий
[gentoo][опрос]Сборка системы на новом GCC (комментарий)

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Хм, вот мой вывод:

equery f libpng
 * Searching for libpng ...
 * Contents of media-libs/libpng-1.2.46:
/usr
/usr/lib64
/usr/lib64/libpng12.so.0
 * Contents of media-libs/libpng-1.5.5:
/usr
/usr/bin
/usr/bin/libpng-config -> libpng15-config
/usr/bin/libpng15-config
/usr/include
/usr/include/libpng15
/usr/include/libpng15/png.h
/usr/include/libpng15/pngconf.h
/usr/include/libpng15/pnglibconf.h
/usr/include/png.h -> libpng15/png.h
/usr/include/pngconf.h -> libpng15/pngconf.h
/usr/include/pnglibconf.h -> libpng15/pnglibconf.h
/usr/lib64
/usr/lib64/libpng.a -> libpng15.a
/usr/lib64/libpng.so -> libpng15.so
/usr/lib64/libpng15.a
/usr/lib64/libpng15.so -> libpng15.so.15.5.0
/usr/lib64/libpng15.so.15 -> libpng15.so.15.5.0
/usr/lib64/libpng15.so.15.5.0
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/libpng.pc -> libpng15.pc
/usr/lib64/pkgconfig/libpng15.pc
/usr/share
/usr/share/doc
/usr/share/doc/libpng-1.5.5
/usr/share/doc/libpng-1.5.5/ANNOUNCE.bz2
/usr/share/doc/libpng-1.5.5/CHANGES.bz2
/usr/share/doc/libpng-1.5.5/README.bz2
/usr/share/doc/libpng-1.5.5/TODO.bz2
/usr/share/doc/libpng-1.5.5/libpng-manual.txt.bz2
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/libpng.3.bz2
/usr/share/man/man3/libpngpf.3.bz2
/usr/share/man/man5
/usr/share/man/man5/png.5.bz2

Я его не правил, если не верите.

libpng14.so.* в нём как видно нет.

И упоминания в la файлах png14 тоже нет:

find /usr/ -type f -iname *.la -exec grep lpng15 {} \;
dependency_libs=' -L/usr/lib64 -lpng15 -lpangocairo-1.0 -lpango-1.0 -lcairo -loil-0.3 -lgstpbutils-0.10 -lgstvideo-0.10 -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lxml2 -lgthread-2.0 -licui18n -licuuc -licudata -ldl -lz -lm -lglib-2.0 -lpthread -lrt'
dependency_libs=' -L/usr/lib64 -lfbsplash -lmng -ljpeg -llcms -lpng15 -lfreetype -lz -lbz2 -lm'
dependency_libs=' -L/usr/lib64 -L/usr/lib -lpng15 -lImlib2 -lfreetype -lz -lbz2 -lX11 -lXext -ldl -lm'
dependency_libs=' -L/usr/lib64 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lfontconfig -lfreetype -lbz2 -lexpat -lsoup-2.4 -lgio-2.0 -lresolv -lswfdec-0.8 -lpangocairo-1.0 -lpango-1.0 -loil-0.3 -lcairo -lpng15 -lasound -lgstpbutils-0.10 -lgstvideo-0.10 -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lxml2 -lgthread-2.0 -licui18n -licuuc -licudata -ldl -lz -lm -lglib-2.0 -lpthread -lrt'
dependency_libs=' -L/usr/lib64 -lsigc-2.0 -lfreetype -lbz2 -lpng15 -lz -lXrender -lcairo -lX11'
dependency_libs=' -L/usr/lib64 -ldirectfb -lm -lfusion -ldirect -lz -lpng15 -ldl -lpthread'
# find /usr/ -type f -iname *.la -exec grep lpng14 {} \;

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от megabaks

Пробовал, не помогает.

При чём странно, почему configure генерирует Makefile с использованием libpng14

find ./ -type f | while read name ; do if grep png ${name} > /dev/null ; then echo $name ; fi ; done
./Makefile
./config.status
./config.log
./tests/Makefile
./tools/Makefile
./tools/m4/Makefile
./scripts/Makefile
./libsexy/Makefile
./libsexy/libsexymm/Makefile
./libsexy/libsexymm/private/Makefile
./libsexy/src/Makefile

grep png14 Makefile
LIBSEXYMM_CFLAGS = -pthread -I/usr/include/gtkmm-2.4 -I/usr/lib64/gtkmm-2.4/include -I/usr/include/atkmm-1.6 -I/usr/include/giomm-2.4 -I/usr/lib64/giomm-2.4/include -I/usr/include/pangomm-1.4 -I/usr/lib64/pangomm-1.4/include -I/usr/include/gtk-2.0 -I/usr/include/gtk-unix-print-2.0 -I/usr/include/gdkmm-2.4 -I/usr/lib64/gdkmm-2.4/include -I/usr/include/atk-1.0 -I/usr/include/glibmm-2.4 -I/usr/lib64/glibmm-2.4/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/sigc++-2.0 -I/usr/lib64/sigc++-2.0/include -I/usr/include/cairomm-1.0 -I/usr/lib64/cairomm-1.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/libdrm -I/usr/lib64/gtk-2.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng14 -I/usr/include/libxml2  
LIBSEXYMM_LIBS = -pthread -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lsexy -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lm -lcairo -lpng14 -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lxml2
kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

вот тебе лог с рецептом

[ root@desktop ] megabaks # emerge =media-libs/libpng-1.4.8-r1
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging	[1 of 1]	media-libs/libpng-1.4.8-r1
>>> Installing 	[1 of 1]	media-libs/libpng-1.4.8-r1
>>> Recording media-libs/libpng:0 in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 1.05, 2.52, 2.08
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
libpng14.so
libpng14.so.14
libpng14.so.14.8.0
libpng.so
[ root@desktop ] megabaks # emerge libpng
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging	[1 of 1]	media-libs/libpng-1.5.5
>>> Installing 	[1 of 1]	media-libs/libpng-1.5.5
>>> Recording media-libs/libpng in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 0.90, 2.36, 2.04

 * Messages for package media-libs/libpng-1.5.5:

 * Old versions of installed libraries were detected on your system.
 * In order to avoid breaking packages that depend on these old libs,
 * the libraries are not being removed.  You need to run revdep-rebuild
 * in order to remove these old dependencies.  If you do not have this
 * helper program, simply emerge the 'gentoolkit' package.
 * 
 *   # revdep-rebuild --library '/usr/lib/libpng14.so.14'
 * 
 * Once you've finished running revdep-rebuild, it should be safe to
 * delete the old libraries.  Here is a copy & paste for the lazy:
 *   # rm '/usr/lib/libpng14.so.14'
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
libpng14.so.14
libpng15.so
libpng15.so.15
libpng15.so.15.5.0
libpng.so
[ root@desktop ] megabaks #

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Нету у меня в libpng-1.5.5 libpng14.so.* ни одной, я же показал вывод.

И нет ни одного бинарника слинкованного с libpng14

ldd /usr/bin/* | grep "libpng14.so"
... (пусто)
Всё слинковано с libpng15, не буду показывать весь вывод, он одинаков для всех бинарников.
ldd /usr/bin/* | grep "libpng"
	libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x00007f7a5a0ed000)

И да у меня нет libpng14.so.14 в системе, временное решение, создал ссылку с /usr/lib64/libpng.15.so на /usr/lib64/libpng.14, пересобрал пакеты, имеющие не удовлетворённые зависимости в библиотеках, теперь они тоже слинкованы с 15 версиекй библиоетки.

Почему у вас так не знаю, може вы сами тоже создали ссылку, или скопировали libpng15.so в libpng14.so, но если у вас стоит только libpng-1.5.5 у вас libpng.14.so быть не должно. Как и у меня.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

тебе повторить про ссылку с частью ебыдла?
или ты думаешь мой лог кривой?
перечитай ещё разок или воспроизведи шаги отсюда ---> [Gentoo] libpng 1.4 -> libpng-1.5.5 (комментарий)
а 14-я либа у тебя в таком раскладе ОБЯЗАНА остаться!

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Это понятно, вы сделали только часть «рецепта»

revdep-rebuild --library '/usr/lib/libpng14.so.14'
без rm '/usr/lib/libpng14.so.14'
А я его сделал целиком и вторую команду тоже, вот у вас и осталась старая библиотека.

Я читаю выходные сообщения после обновления.

Но спасибо что ищете решение проблемы.

Но видимо это проблема скриптов configure в устанавливаемых пакетах, или в чём то еще.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

вот тебе более полный лог, Фома-неверующий

[ root@desktop ] megabaks # emerge -C libpng
 * This action can remove important packages! In order to be safer, use
 * `emerge -pv --depclean <atom>` to check for reverse dependencies before
 * removing packages.

 media-libs/libpng
    selected: 1.5.5 
   protected: none 
     omitted: none 

All selected packages: media-libs/libpng-1.5.5

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in:  5 4 3 2 1 
>>> Unmerging media-libs/libpng-1.5.5...

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
[ root@desktop ] megabaks # emerge libpng
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging	[1 of 1]	media-libs/libpng-1.5.5
>>> Installing 	[1 of 1]	media-libs/libpng-1.5.5
>>> Recording media-libs/libpng in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 1.63, 2.82, 2.16
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
libpng15.so
libpng15.so.15
libpng15.so.15.5.0
libpng.so
[ root@desktop ] megabaks # emerge =media-libs/libpng-1.4.8-r1
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging	[1 of 1]	media-libs/libpng-1.4.8-r1
>>> Installing 	[1 of 1]	media-libs/libpng-1.4.8-r1
>>> Recording media-libs/libpng:0 in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 1.05, 2.52, 2.08
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
libpng14.so
libpng14.so.14
libpng14.so.14.8.0
libpng.so
[ root@desktop ] megabaks # emerge libpng
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging	[1 of 1]	media-libs/libpng-1.5.5
>>> Installing 	[1 of 1]	media-libs/libpng-1.5.5
>>> Recording media-libs/libpng in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 0.90, 2.36, 2.04

 * Messages for package media-libs/libpng-1.5.5:

 * Old versions of installed libraries were detected on your system.
 * In order to avoid breaking packages that depend on these old libs,
 * the libraries are not being removed.  You need to run revdep-rebuild
 * in order to remove these old dependencies.  If you do not have this
 * helper program, simply emerge the 'gentoolkit' package.
 * 
 *   # revdep-rebuild --library '/usr/lib/libpng14.so.14'
 * 
 * Once you've finished running revdep-rebuild, it should be safe to
 * delete the old libraries.  Here is a copy & paste for the lazy:
 *   # rm '/usr/lib/libpng14.so.14'
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
[ root@desktop ] megabaks # ls -1 /usr/lib/ | grep png
libpng14.so.14
libpng15.so
libpng15.so.15
libpng15.so.15.5.0
libpng.so
[ root@desktop ] megabaks #

megabaks ★★★★
()
Ответ на: комментарий от kostik87

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

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Я понял что вы мне говорите, но вы делали эти шаги ?

# revdep-rebuild --library '/usr/lib/libpng14.so.14'
# rm '/usr/lib/libpng14.so.14'

Которые рекомендуется сделать после обновления до libpng-1.5.5, я сделал оба. Поэтому у меня и нет libpng14.so.14

* Once you've finished running revdep-rebuild, it should be safe to * delete the old libraries. Here is a copy & paste for the lazy: * # rm '/usr/lib/libpng14.so.14'

Поэтому я сделал ссылку на 15 версию и всё собралось.

Спасибо.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

Без всяких лишних ссылок можно сделать revdep-rebuild, взять список пакетов и поэтапно их пересобирать начиная с самых простых библиотек пропуская те, на которых ошибки на потом.

anonymous
()
Ответ на: комментарий от anonymous

Вы попробуйте обновиться до libpng-1.5.5, выполнить:

# revdep-rebuild --library '/usr/lib/libpng14.so.14'
# rm '/usr/lib/libpng14.so.14'
и пересобрать libsexymm к примеру, а потом скажете можно без ссылки или нельзя. Может конечно, если пересобрать все зависимости libsexymm
emerge -ae libsexymm
даже те, которые не требуют libpng, получится собрать libsexymm без создания символьной ссылки, но это 249 пакетов в моей системе и так для каждого проблемного пакета, нет уж спасибо.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

Не надо все зависимости, надо те которые revdep-rebuild выдает, наверняка среди них есть и те от которых зависит libsexymm.

anonymous
()
Ответ на: комментарий от kostik87

>Поэтому я сделал ссылку на 15 версию и всё собралось.
а можно было не удалять же фалик - ты просто сделал никому ненужные 2 телодвижения

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Ну не скажите, у вас некоторые библиотеки и программы слинкованы со старой версией libpng-1.4.8-r1, а у меня все с libpng-1.5.5 (libpng15.so.15), даже ссылку можно удалить ибо ссылки при линковке разъименуются:

# ldd /usr/lib64/libsexymm.so | grep png
	libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x00007fb780062000)
# ls -ls /usr/lib64/libpng14.so 
0 lrwxrwxrwx 1 root root 11 Окт 13 16:56 /usr/lib64/libpng14.so -> libpng15.so
...
rm /usr/lib64/libpng14.so 
# ldd /usr/lib64/libsexymm.so | grep png
	libpng15.so.15 => /usr/lib64/libpng15.so.15 (0x00007f48dea37000)

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Нет, к сожалению таких нет, я специально сохранил вывод revdep-rebuild после неудачно попытки сборки и запуска revdep-rebuild снова, ещё без создания ссылки., вот он:

emerge --one-shot --jobs 3 --load-average=3  app-emulation/qemu-kvm:0 dev-cpp/libsexymm:0 dev-libs/DirectFB:0 dev-python/pygame:0 games-emulation/dosbox:0 games-puzzle/pingus:0 gnome-base/gdm:0 gnome-base/libgnomeui:0 gnome-extra/gnome-media:2 gnome-extra/gnome-utils:0 media-libs/devil:0 media-libs/sdl-image:0 media-libs/swfdec:0 media-sound/sox:0 net-im/pidgin:0 net-print/gnome-cups-manager:0 x11-libs/fltk:2

Заменив опции запуска на «avt», что бы не смотреть вручную ebuild, не было найдено ни одной зависимости:

# emerge -avt  app-emulation/qemu-kvm:0 dev-cpp/libsexymm:0 dev-libs/DirectFB:0 dev-python/pygame:0 games-emulation/dosbox:0 games-puzzle/pingus:0 gnome-base/gdm:0 gnome-base/libgnomeui:0 gnome-extra/gnome-media:2 gnome-extra/gnome-utils:0 media-libs/devil:0 media-libs/sdl-image:0 media-libs/swfdec:0 media-sound/sox:0 net-im/pidgin:0 net-print/gnome-cups-manager:0 x11-libs/fltk:2
These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild   R   ~] x11-libs/fltk-2.0_pre6970-r1  USE="cairo jpeg opengl png xft zlib -debug -doc -xinerama" 0 kB
[ebuild   R    ] net-print/gnome-cups-manager-0.33-r2  USE="samba" 0 kB
[ebuild   R    ] net-im/pidgin-2.10.0-r1  USE="dbus gstreamer gtk ncurses nls spell xscreensaver -debug -doc -eds -gadu -gnutls -groupwise -idn -meanwhile -networkmanager -perl -prediction -python -sasl -silc -tcl -tk -zephyr -zeroconf" 0 kB
[ebuild   R    ] media-sound/sox-14.3.2-r1  USE="alsa encode ffmpeg flac id3tag mad ogg openmp png pulseaudio sndfile wavpack -amr -ao -debug -ladspa -oss -static-libs" 0 kB
[ebuild   R    ] media-libs/swfdec-0.8.4  USE="alsa ffmpeg gstreamer gtk pulseaudio -doc" 0 kB
[ebuild   R    ] media-libs/devil-1.7.8  USE="X gif jpeg lcms mng opengl png sdl tiff -allegro -openexr -static-libs -xpm" 0 kB
[ebuild   R    ] gnome-extra/gnome-utils-2.32.0-r2  USE="-bonobo -debug -doc -ipv6 -test" 0 kB
[ebuild   R    ] gnome-extra/gnome-media-2.32.0-r1  USE="pulseaudio" 0 kB
[ebuild   R    ] gnome-base/gdm-2.20.11  USE="branding consolekit gnome-keyring pam tcpd -accessibility -afs -debug -dmx -ipv6 -remote (-selinux) -xinerama" 0 kB
[ebuild   R    ] games-puzzle/pingus-0.7.3  0 kB
[ebuild   R    ] games-emulation/dosbox-0.74  USE="alsa opengl -debug -hardened" 0 kB
[ebuild   R    ] dev-python/pygame-1.9.2_pre3082  USE="X -doc -examples -test" 0 kB
[ebuild   R    ] dev-libs/DirectFB-1.4.9-r1  USE="X gif jpeg mmx png sdl sse sysfs truetype v4l v4l2 zlib -debug -doc -fbcon -static-libs" INPUT_DEVICES="keyboard mouse -dynapro -elo2300 -evdev -joystick -lirc -mutouch -tslib" VIDEO_CARDS="nvidia -intel -mach64 -mga -neomagic (-nsc) -r128 -radeon -s3 -savage -sis -tdfx -via -vmware" 0 kB
[ebuild   R    ] dev-cpp/libsexymm-0.1.9  USE="-debug -doc" 0 kB
[ebuild   R   ~] app-emulation/qemu-kvm-0.14.1-r2  USE="aio alsa jpeg ncurses png pulseaudio qemu-ifup sdl ssl threads vhost-net -bluetooth -brltty -curl -debug -esd -fdt -hardened (-rbd) -sasl -spice -vde -xen" QEMU_SOFTMMU_TARGETS="i386 x86_64 -arm -cris -m68k -microblaze -mips -mips64 -mips64el -mipsel -ppc -ppc64 -ppcemb -sh4 -sh4eb -sparc -sparc64" QEMU_USER_TARGETS="i386 x86_64 -alpha -arm -armeb -cris -m68k -microblaze -mips -mipsel -ppc -ppc64 -ppc64abi32 -sh4 -sh4eb -sparc -sparc32plus -sparc64" 0 kB
[ebuild   R    ] media-libs/sdl-image-1.2.10-r1  USE="gif jpeg png tiff -static-libs" 0 kB
[ebuild   R    ] gnome-base/libgnomeui-2.24.5  USE="-doc -test" 0 kB

Total: 17 packages (17 reinstalls), Size of downloads: 0 kB

Would you like to merge these packages? [Yes/No]

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

Я обновился в свое время до 1.5.4, удалил libpng14.so.14, получил кучу ошибок к которым revdep-rebuild был безразличен, обновил все .la в /usr/lib64 и больше проблемы не имею, равно как и старой библиотеки.
В /usr/bin/* только одно что-то требует старую библиотеку, правда из /usr/lib32, где она имеется.
Ваша libsexymm собирается и разбирается без проблем.

ungifted
()
Ответ на: комментарий от kostik87

убрал 1.4
прогнал ревдеп
сабж собрался без проблем

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Завтра проверю, отпишусь, но

emerg -auvDN world
revdep-rebuild -i
lafilefixer --justfixit
я делал. Может проблема в чём-либо ещё, какую версию python`а вы в частности используете, у меня до сиз пор 2.7 ?

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от megabaks

Как то не прошло ассоциаций, что имелось ввиду FEATURES. Не могу, комп на работе

Завтра проверю, отпишусь, но

завтра запостю.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от megabaks

Я не знаю какая политика пожарной безопасности у вас на работе, но по правилам все помещения, которые не оборудованы автоматическими средствами пожаротушения и где нет ни кого в ночное время должны быть обесточены, как следствие все приборы и рабочие компьютеры должны быть выключены. За исключением специальных помещений, которые оборудованы, к примеру серверная. Вы так не считаете ? )

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от megabaks

Нет, да и зачем, завтра, ужо завтра всё ) А по поводу пожарной безопасности - это нормальная практика, так и должно быть.

kostik87 ★★★★★
() автор топика
Ответ на: комментарий от megabaks

> тебе повторить про ссылку с частью ебыдла?

Мегабаксик, родной, у меня тоже в слота ставились libpng-1.4.* и libpng-1.5.*, но проблемы в этом не вижу. Теперь всё равно все зависимости от libpng14.so.14 ушли, а вместе с ними и libpng-1.4.*.

а 14-я либа у тебя в таком раскладе ОБЯЗАНА остаться!

Я-то свою сперва удалил, как было сказано в логах, и зря, как оказалось. Проблема решилась удалением всех libpng, сборкой именно стабильной версии libpng-1.4.* - и далее, апгрейд до нестабильной ветки libpng. Почему-то просто с перестановкой нестабильного libpng-1.4.* нужный libpng14.so.14 не появлялся.

iVS ★★★★★
()
Ответ на: комментарий от megabaks
user@vovchik ~ $ equery f libpng
 * Searching for libpng ...
 * Contents of media-libs/libpng-1.5.5:
/usr
/usr/bin
/usr/bin/libpng-config -> libpng15-config
/usr/bin/libpng15-config
/usr/include
/usr/include/libpng15
/usr/include/libpng15/png.h
/usr/include/libpng15/pngconf.h
/usr/include/libpng15/pnglibconf.h
/usr/include/png.h -> libpng15/png.h
/usr/include/pngconf.h -> libpng15/pngconf.h
/usr/include/pnglibconf.h -> libpng15/pnglibconf.h
/usr/lib
/usr/lib/libpng.so -> libpng15.so
/usr/lib/libpng15.so -> libpng15.so.15.5.0
/usr/lib/libpng15.so.15 -> libpng15.so.15.5.0
/usr/lib/libpng15.so.15.5.0
/usr/lib/pkgconfig
/usr/lib/pkgconfig/libpng.pc -> libpng15.pc
/usr/lib/pkgconfig/libpng15.pc
/usr/share
/usr/share/doc
/usr/share/doc/libpng-1.5.5
/usr/share/doc/libpng-1.5.5/ANNOUNCE.bz2
/usr/share/doc/libpng-1.5.5/CHANGES.bz2
/usr/share/doc/libpng-1.5.5/README.bz2
/usr/share/doc/libpng-1.5.5/TODO.bz2
/usr/share/doc/libpng-1.5.5/libpng-manual.txt.bz2
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/libpng.3.bz2
/usr/share/man/man3/libpngpf.3.bz2
/usr/share/man/man5
/usr/share/man/man5/png.5.bz2
user@vovchik ~ $ ls -1 /usr/lib/ | grep png
libpng15.so
libpng15.so.15
libpng15.so.15.5.0
libpng.so
user@vovchik ~ $

Кстати, мир пересобрался без проблем. Естественно, при revdep-rebuild всё спокойно.

iVS ★★★★★
()
Ответ на: комментарий от iVS

я не про то
1. я просил поставить 1.4
2. просил поставить 1.5
3. снести 1.4
4. прогнать revdep-rebuild -i — -avD
5. тут простор для творчества - хочешь оставляй 1.4, хочешь нет
но некоторый софт таки надо патчить под 1.5.* либу - пример qt-3*
самому вот пришлось фиксисть ебыдло в stuff на премет libpng-14 и libpng-15 (от версии зависит накладываемый патч) + от версии gcc зависимость - если это 4.6.*, то надо патчить
а то что, пусть и с патчами, всё работает и с 1.5 - не спорю

megabaks ★★★★
()
Ответ на: комментарий от megabaks

я не про то 1. я просил поставить 1.4 2. просил поставить 1.5 3. снести 1.4 4. прогнать revdep-rebuild -i — -avD

Сносил обе: emerge -C libpng, обновлял мир. Почему-то предлагалось ставить в два слота libpng1.4 и libpng1.5, при этом libpng14.so.14 относилась к 1.4. Почему - не знаю. Где я наврал?

iVS ★★★★★
()
Ответ на: комментарий от megabaks

> не знаю....не сносил 1.4

Нет же, и при удалении всё видно, и при обновлении R от N различаю. Я тоже не знаю. Ну и ладно, сейчас libpng-1.5 только и осталась.

iVS ★★★★★
()
Ответ на: комментарий от iVS

короче - на пальцах
есть 1.4 - при обновлении до 1.5 проверяется наличие либы 1.4
если такие имеются, то либа 1.4 остаётся

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Спасибо за пояснение, видимо, так и было. Т.е. один из вариантов:

  1. установить libpng-1.4
  2. удалить /usr/lib/libpng14.so.14
  3. установить libpng-1.5
  4. запустить revdep-rebuild
  5. удалить libpng-1.4
iVS ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.