FS#35182 - [oolite] Broken by recent libpng update

Attached to Project: Community Packages
Opened by Stefano (masque) - Friday, 10 May 2013, 18:20 GMT
Last edited by Bartłomiej Piotrowski (Barthalion) - Saturday, 11 May 2013, 16:11 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Sven-Hendrik Haase (Svenstaro)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
After the recent libpng update, oolite won't start anymore.


Additional info:
* package version(s)
oolite 1.77-1
libpng 1.6.2-3

* config and/or log files etc.
/usr/share/oolite/oolite: error while loading shared libraries: libpng15.so.15: cannot open shared object file: No such file or directory


Steps to reproduce:
Update to libpng > 1.5
Start oolite
This task depends upon

Closed by  Bartłomiej Piotrowski (Barthalion)
Saturday, 11 May 2013, 16:11 GMT
Reason for closing:  Fixed
Additional comments about closing:  oolite 1.77-2
Comment by Eric Belanger (Snowman) - Friday, 10 May 2013, 21:20 GMT
Looks like it was forgotten. I suppose it's because it has a binary in /usr/share:
$ readelf -d /usr/share/oolite/oolite |grep libpng
0x0000000000000001 (NEEDED) Shared library: [libpng15.so.15]
Comment by Maxime Gauduin (Alucryd) - Friday, 10 May 2013, 22:43 GMT
Trying to rebuild leads to 2 errors:
- the first is the same as bug report https://bugs.archlinux.org/task/34873, solved the same way (unset CPPFLAGS)
- second, with CPPFLAGS unset, build eventually fails with this error message:

src/Core/Materials/OOPNGTextureLoader.m:34:6: error: conflicting types for 'png_error'
void png_error(png_structp, png_const_charp) NO_RETURN_FUNC;
^
In file included from /usr/include/png.h:446:0,
from src/Core/Materials/OOPNGTextureLoader.h:30,
from src/Core/Materials/OOPNGTextureLoader.m:28:
/usr/include/png.h:1997:1: note: previous declaration of 'png_error' was here
PNG_EXPORTA(102, void, png_error, (png_const_structrp png_ptr,
^
make[4]: *** [obj.spk/oolite.obj/OOPNGTextureLoader.m.o] Error 1
make[3]: *** [internal-objc_program-all_] Error 2
make[2]: *** [oolite.all.objc-program.variables] Error 2
make[1]: *** [internal-all] Error 2
make[1]: Leaving directory `/build/src/oolite-build'
make: *** [release] Error 2
Comment by Eric Belanger (Snowman) - Friday, 10 May 2013, 23:19 GMT
Instead of unsetting CPPFLAGS, you should fix the configure script:
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" configure

Anyway, I think I know how to fix it so I'll give it a try.
Comment by Eric Belanger (Snowman) - Saturday, 11 May 2013, 02:32 GMT
The CPPFLAGS fix I suggest doesn't really work here because of how it's build. Also I'm not even able to reach the png error because it errors out before that:

Updating Javascript sources...

cd deps/Cocoa-deps/scripts && ./update-mozilla.sh
libjs is up to date.
mkdir -p deps/Cross-platform-deps/mozilla/js/src/build-release
make[1]: Leaving directory `/home/eric/svnroot/oolite/trunk/src/oolite-build'
make -f GNUmakefile debug=no
make[1]: Entering directory `/home/eric/svnroot/oolite/trunk/src/oolite-build'
GNUmakefile:1: /common.make: No such file or directory
GNUmakefile:392: /objc.make: No such file or directory
make[1]: *** No rule to make target `/objc.make'. Stop.
make[1]: Leaving directory `/home/eric/svnroot/oolite/trunk/src/oolite-build'
make: *** [release] Error 2
==> ERROR: A failure occurred in build().
Comment by Maxime Gauduin (Alucryd) - Saturday, 11 May 2013, 12:20 GMT
I've upped a fix PKGBUILD here: https://github.com/Alucryd/aur-alucryd/tree/master/personal/oolite
Eric, before I upload this in [community], are you okay with using 'unset CPPFLAGS'?

Loading...