emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: imagemagick support on W32


From: Christoph
Subject: Re: imagemagick support on W32
Date: Thu, 30 Sep 2010 22:16:32 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.9) Gecko/20100915 Thunderbird/3.1.4

On 9/30/2010 9:16 PM, Juanma Barranquero wrote:

Yes, something like that, assuming you're trying to use ImageMagick
DLLs and not linking statically.

For now, I will go on with the dlls. On a side note: would Emacs require to use the .dlls or could the library also be statically linked in?

On HAVE_NTGUI, macros DEF_IMGLIB_FN and LOAD_IMGLIB_FN create and set
such pointers. On ! HAVE_NTGUI, such pointers are simply redefined to
refer to the original, statically linked functions.

So, the code that currently calls ImageMagick functions directly, like
NewMagickWand, MagickPingImage, etc, should be changed to call
fn_NewMagickWand, fn_MagickPingImage, etc.

That's what I figured. Thanks.

One issue:

   /* Try loading ImageMagick library under probable names.  */
   if (!(library = w32_delayed_load (libraries, Qimagemagick)))
     return 0;

You'll have to add the imagemagick libraries to image-library-alist,
of course. But, what is the intention of ImageMagick here? To
substitute libpng, jpeglib, etc? If so, something will have to be done
with respect to image-type-available-p (or, more specifically,
init-image-library) so Emacs "knows" that png, jpeg, tiff, etc are
really available.

But perhaps I'm misinterpreting the intention of ImageMagick?

I assumed that that was the intention of the inclusion of the ImageMagick branch in the first place. Maybe there are other use cases though that I am not aware of.

Thanks for the image-library-alist hint.

Right now, everything compiles fine (with the addition of my own init_imagemagick_functions function, but when I run (imagemagick-register-types) Emacs crashes.

Run under gdb from the src/ directory the output is:

Program received signal SIGSEGV, Segmentation fault.
0x6d043295 in GetLastValueInLinkedList ()
from D:\devel\emacs\emacs-bzr\imagemagick\src\oo-spd\i386\CORE_RL_magick_.dll

I try to dig around some more.

Christoph



reply via email to

[Prev in Thread] Current Thread [Next in Thread]