|
|
Am 09.07.2012 21:56, schrieb Le_Forgeron:
> Indeed, the portability note on
> http://www.libpng.org/pub/png/libpng.html
> does state that png_struct & png_info are now private.
>
> png_structp (as type: png_struct * , p for pointer) is actually used in
> source/base/image/png.cpp, and same goes for png_infop .
> That might not help :->
Obviously if that was the issue, it would cause problems not during
linkage but during compilation.
In fact, png_struct and png_info are still declared in the headers -
they're just not defined any more; so pointers to them can still be
passed around without problem, and have to be.
The breaking API changes in 1.5 - as far as they're officually
documented - have already been taken care of even before the fact, when
making POV-Ray ready for 1.4 of libpng.
The linker gags on something called "png_set_longjmp_fn" - an identifier
that is nowhere in the POV-Ray code, so it must have found its way into
the object code via libpng headers; this means that the headers used by
the compiler don't match what the linker tries to link against - either
because the libpng team have goofed it, or because the compiler and
linker have different ideas about which libpng version to use.
Post a reply to this message
|
|