Re: SEGV with --with-gslib for 1.1.10

Bob Friesenhahn <[email protected]> Tue, 15 Jan 2008 13:06:54 -0600 (CST)
Newsgroups gmane.comp.video.graphicsmagick.core
Message-ID <[email protected]>
On Tue, 15 Jan 2008, Albert Chin wrote:

> I've built 1.1.10 on RHEL4/x86_64 with --with-gslib against
> Ghostscript 8.57. I'm getting a SEGV while running the testsuite:
>  ./rwfile ./input_bilevel.miff JPEG
>  ./rwfile ./input_gray.miff JPEG
>  ./rwfile ./input_256c.miff JPEG
>  ./rwfile ./input_truecolor.miff JPEG
>
> So, is GM doing something wrong or did we just build one of our
> 3rd-party libs incorrectly?

Ghostscript uses libjpeg and either incorporates all of its symbols, 
or (hopefully) references it as a shared library.  GraphicsMagick also 
uses libjpeg.  If Ghostscript incorporates libjpeg into its own 
library and there is some variance between how the libjpeg that 
GraphicsMagick uses and the libjpeg that Ghostscript uses are built 
(or a difference in structure definitions), then there will surely be 
problems.  There is also a possibility of using the wrong symbols due 
to duplicate symbols in the program.  The only semi-safe approach is 
if both Ghostscript and GraphicsMagick use the same libjpeg as a 
"system" shared library and share the same libjpeg headers.

It used to be that Ghostscript provided its own libjpeg, which 
included some modifications to be more appealing for Ghostscript's own 
use.  I don't know if it still does that.

I have not tested using the Ghostscript library under Unix in a very 
long time.

If there is an actual bug in GraphicsMagick pertaining to use of 
Ghostscript as a library, it would be in the 
InvokePostscriptDelegate()  function in magick/delegate.c.

Bob
======================================
Bob Friesenhahn
[email protected], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/