Subsurface crashing on Mac since update to Mavericks

Thiago Macieira thiago at macieira.org
Fri Nov 8 08:21:51 UTC 2013


On sexta-feira, 8 de novembro de 2013 15:12:16, Robert Helling wrote:
> > can you show the backtrace, so I can try to see that with the marble guys?
> 
> Sure, here you go (with everything):

Can you export DYLD_IMAGE_SUFFIX=_debug and run gdb again?

That's a backtrace of a release build. But you've got a failing Q_ASSERT, so 
it's not a release build... Possibly the CMake buildsystem failed to set the 
compilation flags properly.

Also, looks like you've done the deployment step and then recompiled 
Subsurface. Please remove the Subsurface.app bundle, compile again and don't 
do the deployment or DMG creation step, to avoid warnings like:

objc[50475]: Class QCocoaPrintPanelDelegate is implemented in both 
/Users/helling/test/subsurface/Subsurface.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui 
and /usr/local/lib/QtGui.framework/Versions/4/QtGui. One of the two will be 
used. Which one is undefined.

The problem seems to be in Marble::GeoTagHandler::registerHandler, which is a 
static function accessing a global singleton object. It seems to be checking 
that you're not registering two handlers for the same geotag. The backtrace 
indicates that this plugin registered itself on initialisation, probably as a 
result of using the GEODATA_DEFINE_TAG_HANDLER macro.

Searching the Marble sources for that macro shows that there are no two places 
registering the same tag. With that in mind and with that warning above from 
the OS X dynamic linker that you've got two versions of QtGui being found 
leads me to believe you've also got all Marble plugins duplicated. When the 
second set is found and loaded, it results in this crash.

Note to self:
> bfd_mach_o_scan_read_symtab_symbol: symbol "_bzero" is unsupported
> 'indirect' reference: setting to undefined
Apple has introduced something interesting in their binary format, probably 
something akin to GCC's IFUNC support.

> #10 __cxx_global_var_init [inlined] () at
> /Users/helling/src/marble/sources/src/lib/MarbleColors.h:54

Ugh... Why did I open MarbleColors.h... Looks like the Marble devs need a good 
class in writing proper code... 
-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.hohndel.org/pipermail/subsurface/attachments/20131108/bfe0bb23/attachment.sig>


More information about the subsurface mailing list