Summary: | media-libs/devil-1.7.8 fails to build with libpng-1.4 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | quazgar <quazgar> |
Component: | [OLD] Library | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | quazgar |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
quazgar
2010-06-27 22:22:58 UTC
Samuli Suominen (in bug #322843) noticed that it still tries to link against libpng12. After having a second look at the emerge log, I found there lines from the configure process: ... checking png.h usability... yes checking png.h presence... yes checking for png.h... yes checking for main in -lpng12... yes ... (In reply to comment #1) > Samuli Suominen (in bug #322843) noticed that it still tries to link against > libpng12. After having a second look at the emerge log, I found there lines > from the configure process: > > ... > checking png.h usability... yes > checking png.h presence... yes > checking for png.h... yes > checking for main in -lpng12... yes > ... > It checks for libpng12.so first (you shouldn't have this file anymore, if you just upgraded to libpng 1.4 from portage), and then falls back to plain libpng.so (you have this from libpng 1.4 installation from portage) so far as I can see, there's no problem in the package/ or ebuild, rather you have old copy of libpng installed somewhere in your system (In reply to comment #2) > It checks for libpng12.so first (you shouldn't have this file anymore, if you > just upgraded to libpng 1.4 from portage), and then falls back to plain > libpng.so (you have this from libpng 1.4 installation from portage) like: checking png.h usability... yes checking png.h presence... yes checking for png.h... yes checking for main in -lpng12... no <- here checking for png.h... (cached) yes checking for main in -lpng... yes <- this is libpng 1.4 @daniel: Totally OT, but you have a typo in you /etc/make.conf, in the FEATURES line, "$" missing. (In reply to comment #2) > It checks for libpng12.so first (you shouldn't have this file anymore, if you > just upgraded to libpng 1.4 from portage), and then falls back to plain > libpng.so (you have this from libpng 1.4 installation from portage) > > so far as I can see, there's no problem in the package/ or ebuild, rather you > have old copy of libpng installed somewhere in your system Probably true, equery -d doesn't find an owner of libpng12.so (i.e. libpng12.so.0.43.0). I'll delete it after having revdep-rebuilt everything (I had thought that I had done that before already. It's ok for me to close this as INVALID, I'll reopen the bug if the problem persists with the old libpng12 removed. Ok, so for everyone who also hits this problem: /usr/lib64/libpng12.so (and the files linked to by this name) was still owned by libpng-1.4 indeed, since there were still packages in @preserved-rebuild depending on this file (media-libs/devil being one of them). So since devil could not be rebuilt with libpng12.so still present, @preserved-rebuild was not empty, so libpng12.so could not be deleted. My solution was: Rebuild everything that could be built (using --resume --skipfirst iteratively), then remove libpng12.so (and the other 1.2 files) by hand, run revdep-rebuild (this builds devil, among others), build libpng again just to be sure, and follow the usual procedure (@preserved-rebuild, revdep-rebuild). This worked for me, apart from two other packages which failed to build (but that't off-topic here). (In reply to comment #2) > It checks for libpng12.so first (you shouldn't have this file anymore, if you > just upgraded to libpng 1.4 from portage), and then falls back to plain > libpng.so (you have this from libpng 1.4 installation from portage) > ok, so i mask <libpng-1.4 but than !!! All ebuilds that could satisfy "=media-libs/libpng-1.2*" have been masked. !!! One of the following masked packages is required to complete your request: - media-libs/libpng-1.2.44 (masked by: package.mask) - media-libs/libpng-1.2.43-r2 (masked by: package.mask) (dependency required by "net-misc/nxclient-3.4.0.7" [ebuild]) does this mean than i can't have devil and nxclient on the same machine? For anyone still hitting this and unwilling to re-emerge a lot (like I was), the quick&dirty fix: cd /usr/lib mv libpng12.so{,.bak} emerge -1 devil mv libpng12.so{.bak,} |