From: Andrew R. <ar...@ge...> - 2001-11-29 01:58:48
|
Hello, First, back to the original SEGFP errors I was getting with X20c. I have compiled x20c WITHOUT any GD driver at all, and I still get the same SEGFP errors, so it isn't anything new introduced in the GD driver changed. I know it is related to the plimage command, but where in it I don't know. >> I only actually added about 8 new lines to the driver, so the differences >> are minimal, and there would seem to be little to go wrong there. > >Hmmm. I just tried a test with the old version of gd.c, and all the >segfaults go away. With the new gd.c I also overrode GD2_VERS to be 1 and >the result was no segfaults. However, if I left it at 2 (i.e., actually >compile your 3 calls to gdImageSetThickness(dev->im_out, pls->width)), the >segfaults come back. Either there is something wrong with libgd 2.0.1 or more >likely dev->im_out or pls->width are not properly set when you make these >calls. pls->width should be set from plplot, and is ok. I don't think the problem can be there. dev->im_out could have a problem, but that will sadly go back to GD somewhere. I think something is wrong with libgd 2.0.1 - it is listed on the gd web site as an "unstable beta", and there is a warning in the makefile that linking order can be significant. We knew that from the very first incarnation of the GD driver anyway, but at least for DJGPP, the linking order has changed AGAIN *sigh*. The last STABLE version of GD is 1.8.4. I strongly suspect the problem is in GD. >Until you can find the answer, I have overriden GD2_VERS in the interest of >keeping -dev png operational on CVS head. Probably a good idea, but there is sadly little I can do, because unfortunately (fortunately?) it works on my machine and I can't replicate your problem :-( Wekl actually I CAN replicate it, but I can also FIX it by changing the linking order, and making sure the maths library links AFTER libgd.a, libpng.a, and libjpeg.a . Did you try reordering the linking ? One other thought. Are you 100% sure that you are linking against the 2.0.1 library and not the 1.8.? library ? You might have the headers for GD 2 but the library for GD 1 - that would probably cause an error like this. - Andrew |