On Tue, Aug 27, 2002 at 12:38:41AM +0100, Glynn Clements wrote:
Markus Neteler wrote:
> my build-script now compiles separated a 24bit PNG driver:
> I had to hardcode library paths inside
Hardcoding paths doesn't fix anything; it just makes it look that way
to you (because your /usr/local/lib/libgd.so is GD 2.x).
The right approach is to give the GD 2.x library a soname of
"libgd.so.2", by adding "-Wl,-soname,libgd.so.2" to the linking flags.
Thanks for this hint! But were to add it (sorry, speak slowly please).
I tried to add it in PNGdriver/Gmakefile but it still picks up
the wrong lib:
gmake5
[...]
gcc -L/hardmnt/thuille1/ssi/cvsgrass_exp/src/libes/LIB.i686-pc-linux-gnu -o
/ssi0/ssi/neteler/cvsgrass_exp/dist.i686-pc-linux-gnu/driver/PNG
OBJ.i686-pc-linux-gnu/Can_do.o OBJ.i686-pc-linux-gnu/Clr_table.o
OBJ.i686-pc-linux-gnu/Color.o OBJ.i686-pc-linux-gnu/Draw_line.o
OBJ.i686-pc-linux-gnu/Get_w_box.o OBJ.i686-pc-linux-gnu/Get_w_line.o
OBJ.i686-pc-linux-gnu/Get_w_pnt.o OBJ.i686-pc-linux-gnu/Graph_Clse.o
OBJ.i686-pc-linux-gnu/Graph_Set.o OBJ.i686-pc-linux-gnu/Panel.o
OBJ.i686-pc-linux-gnu/Polygn_abs.o -ldriver -lgis -lz -L/usr/local/lib
-lgd -lfreetype -ljpeg -lpng -lz -lm -Wl,-soname,libgd.so.2
[sorry, I don't know anything about this soname trick]
ldd /ssi0/ssi/neteler/cvsgrass_exp/dist.i686-pc-linux-gnu/driver/PNG
libgd.so => /usr/lib/libgd.so (0x40017000)
ls -l /usr/lib/libgd.so
lrwxrwxrwx 1 root root 14 Aug 1 2001 /usr/lib/libgd.so -> libgd.so.1.8.3
It should also have dependency information, which is obtained by
adding the necessary "-l" switches to the link command (although this
isn't strictly necessary; configure should handle all of the many
possible combinations of optional libraries).
Realistically, we need to provide a fixed version of GD 2.x along with
the 24-bpp version of the PNG driver.
The alternative is to simply state that GD 2.x is unsupported, until
either the GD developers fix the problems, or OS vendors start
shipping GD 2.x (the OS vendors will handle the version problems
themselves if the GD developers don't).
Well, even for us here at IRST I need a solution, an 8bit PNG driver
ist just too poor.
Markus