Simon Leinen <simon.leinen@gmail.com> writes:
> My .emacs sets visible-bell to t. When I compile Emacs on MacOS X with
> Gtk3 (from Macports) as the X toolkit and run it, it crashes almost
> instantly with a failed assertion in cairo_pattern_destroy().
>
> I can reproduce this using emacs -Q by saying:
>
> M-: (setq visible-bell t)
> M-x ding
FWIW, I cannot reproduce this with either 24.2 or latest trunk,
x86_64-unknown-linux-gnu, GTK+ Version 3.4.2.
[...]
A crash so deep in Cairo seems to indicate that this is a Cairo-on-Mac
bug. There doesn't seem to be anything suspicious in the Emacs part of
the backtrace.
You are right. I think I'm trapped in "DLL hell" - some libraries are taken from /opt/local/lib (MacPorts), but some from /usr/X11/lib, including an apparently older libcairo. It's surprising that things work at all - so far the only crashes I noticed were with visible-bell.
I'll have to find out how to get the build system to use the right libraries...
: leinen@Simons-MacBook-Air[Mail]; otool -L /var/tmp/emacs/build-gcc-4.2/src/emacs
/var/tmp/emacs/build-gcc-4.2/src/emacs:
/opt/local/lib/libgtk-3.0.dylib (compatibility version 401.0.0, current version 401.4.0)
/opt/local/lib/libgdk-3.0.dylib (compatibility version 401.0.0, current version 401.4.0)
/opt/local/lib/libatk-1.0.0.dylib (compatibility version 20210.0.0, current version 20210.1.0)
/opt/local/lib/libgio-2.0.0.dylib (compatibility version 3201.0.0, current version 3201.4.0)
/opt/local/lib/libpangocairo-1.0.0.dylib (compatibility version 3001.0.0, current version 3001.1.0)
/opt/local/lib/libgdk_pixbuf-2.0.0.dylib (compatibility version 2601.0.0, current version 2601.3.0)
/usr/local/lib/libcairo-gobject.2.dylib (compatibility version 11203.0.0, current version 11203.3.0)
/opt/local/lib/libpangoft2-1.0.0.dylib (compatibility version 3001.0.0, current version 3001.1.0)
/opt/local/lib/libpango-1.0.0.dylib (compatibility version 3001.0.0, current version 3001.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
/usr/X11/lib/libfreetype.6.dylib (compatibility version 14.0.0, current version 14.2.0)
/usr/X11/lib/libfontconfig.1.dylib (compatibility version 6.0.0, current version 6.4.0)
/usr/X11/lib/libcairo.2.dylib (compatibility version 11003.0.0, current version 11003.2.0)
/opt/local/lib/libgobject-2.0.0.dylib (compatibility version 3201.0.0, current version 3201.4.0)
/opt/local/lib/libglib-2.0.0.dylib (compatibility version 3201.0.0, current version 3201.4.0)
/usr/X11/lib/libSM.6.dylib (compatibility version 7.0.0, current version 7.1.0)
/usr/X11/lib/libICE.6.dylib (compatibility version 10.0.0, current version 10.0.0)
/opt/local/lib/libtiff.3.dylib (compatibility version 13.0.0, current version 13.5.0)
/opt/local/lib/libjpeg.8.dylib (compatibility version 13.0.0, current version 13.0.0)
/usr/X11/lib/libpng15.15.dylib (compatibility version 20.0.0, current version 20.0.0)
/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.7)
/opt/local/lib/libgif.4.dylib (compatibility version 6.0.0, current version 6.7.0)
/usr/X11/lib/libXpm.4.dylib (compatibility version 16.0.0, current version 16.0.0)
/usr/X11/lib/libX11.6.dylib (compatibility version 10.0.0, current version 10.0.0)
/usr/X11/lib/libXrender.1.dylib (compatibility version 5.0.0, current version 5.0.0)
/usr/X11/lib/libXft.2.dylib (compatibility version 5.0.0, current version 5.0.0)
/opt/local/lib/librsvg-2.2.dylib (compatibility version 39.0.0, current version 39.3.0)
/opt/local/lib/libMagickWand.5.dylib (compatibility version 6.0.0, current version 6.0.0)
/opt/local/lib/libMagickCore.5.dylib (compatibility version 6.0.0, current version 6.0.0)
/opt/local/lib/libdbus-1.3.dylib (compatibility version 9.0.0, current version 9.9.0)
/opt/local/lib/libxml2.2.dylib (compatibility version 11.0.0, current version 11.0.0)
/usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 46.1.0)
/opt/local/lib/libncurses.5.dylib (compatibility version 5.0.0, current version 5.0.0)
/opt/local/lib/libgconf-2.4.dylib (compatibility version 6.0.0, current version 6.5.0)
/opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.6)
/opt/local/lib/libotf.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/opt/local/lib/libgnutls.26.dylib (compatibility version 49.0.0, current version 49.3.0)
Best regards,
--
Simon.