Вы здесь

не может скомпилироваться пакет sdl2-image

ждал, может обновления появятся, но так ничего и не происходит.
пакет media-libs/sdl2-image 2.0.0-r1 не может скомпилироваться.
сама библиотека libsdl2 уже версии 2.0.3-r200

выдает в консоль такие сообщения перед выходом:


libtool: link: x86_64-pc-linux-gnu-gcc -I/usr/include/libpng16 -march=corei7-avx -O2 -pipe -D_REENTRANT -I/usr/include/SDL2 -Wl,-O1 -Wl,--as-needed -o .libs/showimage showimage.o ./.libs/libSDL2_image.so /usr/lib/libpng12.so -lm -ljpeg -ltiff -lz -lSDL2 -lpthread
000174 ./.libs/libSDL2_image.so: undefined reference to `png_set_longjmp_fn'
000175 collect2: error: ld returned 1 exit status
000176 Makefile:516: recipe for target 'showimage' failed
000177 make: *** [showimage] Error 1
000178 * ERROR: media-libs/sdl2-image-2.0.0-r1::gentoo failed (compile phase):
000179 * emake failed
000180 *
000181 * If you need support, post the output of `emerge --info '=media-libs/sdl2-image-2.0.0-r1::gentoo'`,
000182 * the complete build log and the output of `emerge -pqv '=media-libs/sdl2-image-2.0.0-r1::gentoo'`.
000183 * The complete build log is located at '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/build.log'.
000184 * The ebuild environment file is located at '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/environment'.
000185 * Working directory: '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/work/SDL2_image-2.0.0-abi_x86_64.amd64'
000186 * S: '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/work/SDL2_image-2.0.0'
000187
000188 >>> Failed to emerge media-libs/sdl2-image-2.0.0-r1, Log file:
000189
000190 >>> '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/build.log'
000191
000192 * Messages for package media-libs/sdl2-image-2.0.0-r1:
000193
000194 * ERROR: media-libs/sdl2-image-2.0.0-r1::gentoo failed (compile phase):
000195 * emake failed
000196 *
000197 * If you need support, post the output of `emerge --info '=media-libs/sdl2-image-2.0.0-r1::gentoo'`,
000198 * the complete build log and the output of `emerge -pqv '=media-libs/sdl2-image-2.0.0-r1::gentoo'`.
000199 * The complete build log is located at '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/build.log'.
000200 * The ebuild environment file is located at '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/environment'.
000201 * Working directory: '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/work/SDL2_image-2.0.0-abi_x86_64.amd64'
000202 * S: '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/work/SDL2_image-2.0.0'

как победить ? или ставить из исходников новую версию ?

Для начала '/var/tmp/portage/media-libs/sdl2-image-2.0.0-r1/temp/build.log' в студию.
Потом убедись, что

revdep-rebuild -i

отрабатывает без ошибок.
Ну и

emerge --sync
eselect binutils list
gcc-config -l
emerge -uDN --with-bdeps=y --backtrack=30 @world -pv

покажи.

вот лог:
build.log
revdep-rebuild -i ругается на не рабочие библиотеки wine 2 штуки их там, думаю это не актуально ?!
binutils только одна версия 2.25.1
gcc-config -l тоже одну версию показывает 4.9.3
последняя команда emerge ничего обновлять не хочет. всё обновлено :)

я пытался установить версию sdl2-image-2.0.1 но при компиляции тоже самое говорит, ошибка в том же месте.

Почему-то я не поленился для тебя привести полностью готовые команды, а тебе в лом выдать мне информацию, которую я прошу для решения твоей проблемы. Позволь уж мне решать, что важно здесь, а что нет! Или решай уж дальше сам...

revdep-rebuild -i
весь лог revdep.log

emerge --sync
весь лог sync.log

# eselect binutils list
Installed binutils for target x86_64-pc-linux-gnu
  [1]   2.25.1 *
# gcc-config -l
 [1] x86_64-pc-linux-gnu-4.9.3 *
# emerge -uDN --with-bdeps=y --backtrack=30 @world -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!

Total: 0 packages, Size of downloads: 0 KiB

SDL2-image-2.0.1 скачанный с офф сайта sdl скомпилировался без проблем. в конфиге только префикс указывал. не знаю что указывает генту, когда конфигурирует из портэжэй.

Что говорит strings /usr/lib/libpng12.so | grep longjmp?

Пользуясь моментом, хочу передать привет друзьям, которые также пользуются "Моментом"

vfiuchcikicshuusrch написал:
libtool: link: x86_64-pc-linux-gnu-gcc -I/usr/include/libpng16 -march=corei7-avx -O2 -pipe -D_REENTRANT -I/usr/include/SDL2 -Wl,-O1 -Wl,--as-needed -o .libs/showimage showimage.o ./.libs/libSDL2_image.so /usr/lib/libpng12.so -lm -ljpeg -ltiff -lz -lSDL2 -lpthread
000174 ./.libs/libSDL2_image.so: undefined reference to `png_set_longjmp_fn'

не смущает -I/usr/include/libpng16 и /usr/lib/libpng12.so?

неправильный линк /usr/lib/libpng.so.
поправь.
/usr/lib/libpng.so -> libpng16.so

# strings /usr/lib/libpng12.so | grep longjmp
__longjmp_chk
longjmp
__longjmp_chk
__longjmp_chk@@GLIBC_2.11
/usr/lib/libpng.so -> libpng16.so

так сейчас и есть.
может через eselect нужно что-то переназначить ?

у тебя прилинковать /usr/lib/libpng12.so пытается, а хэдеры из 16 берёт.

это я понял уже)
но версия из исходников нормально скомпилировалась, может менеджер управления пакетами тупит ? %) больше не на кого думать...

libpng12 я руками скомпилировал и установил, была нужна для чего уже не помню.
в porthole нет такой библиотеки, там только 1.6. есть. из-за этого и косячит что-то видимо.. -.-

..опять скомпилировал 32 и 64 битную версии libpng12 и деинсталировал их обе из системы,
за одно переустановил libpng16.

теперь компиляция sdl2-image через emerge прошла успешно, без ошибок.

напрашивается вопрос, как мне из потрежей установить всё таки libpng12 ?

vfiuchcikicshuusrch написал:
...версия из исходников нормально скомпилировалась, может менеджер управления пакетами тупит ? %) больше не на кого думать...

Ну это еще большой вопрос, кто тут тупит!..
Если ты ставишь пакет в обход менеджера, то как он о нем будет знать?!.. :)

vfiuchcikicshuusrch написал:
libpng12 я руками скомпилировал и установил

А вот это есть давно известная ересь!

vfiuchcikicshuusrch написал:
..опять скомпилировал 32 и 64 битную версии libpng12 и деинсталировал их обе из системы,
за одно переустановил libpng16. теперь компиляция sdl2-image через emerge прошла успешно, без ошибок.

Что и требовалось доказать!

vfiuchcikicshuusrch написал:
напрашивается вопрос, как мне из потрежей установить всё таки libpng12 ?

Элементарно!

emerge media-libs/libpng:1.2

Читайте маны на досуге... ;)

уу... как всё строго :) ладно хоть за спрос деньги не требуете и на том спасибо.
маны читаю, знать бы какой запрос послать %) что искать... и как это сформулировать.

спасибо за советы! буду знать!

vfiuchcikicshuusrch написал:
...маны читаю, знать бы какой запрос послать %) что искать...

В манах не нужен поиск, их нужно просто знать, - как азбуку! :)

SysA написал:
В манах не нужен поиск, их нужно просто знать, - как азбуку! :)

Ещё как нужен!

Но он есть.
На странице интерфейсно унифицирован с стандартным редактором (vi).

:wq
--
Live free or die

ТС имел ввиду совсем другое! :)