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

Re: gdcm: Got a SIGABRT while executing native code



On Sat, 30 May 2009 10:25:57 +0200
Mathieu Malaterre <mathieu.malaterre@gmail.com> wrote:

> Hi,
> 
>   I am trying to get GDCM uploaded on debian, it works so far fine on
> amd64/i386/ia64 but I am getting two bizarre seg fault on powerpc and
> s390
> 
> https://buildd.debian.org/fetch.cgi?pkg=gdcm;ver=2.0.10-1;arch=powerpc;stamp=1243500115
> https://buildd.debian.org/fetch.cgi?pkg=gdcm;ver=2.0.10-1;arch=s390;stamp=1242605005
> 
> ...
> [ 49%] csc *.cs
> 
> ** (/usr/lib/mono/2.0/gmcs.exe:15941): CRITICAL **:
> _wapi_shm_file_open: shared file
> [/srv/buildd/.wapi/shared_data-debian-31.osdl.marist.edu-Linux-s390-312-12-0]
> open error: No such file or directory
> 
> ** (/usr/lib/mono/2.0/gmcs.exe:15941): CRITICAL **: _wapi_shm_attach:
> shared file
> [/srv/buildd/.wapi/shared_data-debian-31.osdl.marist.edu-Linux-s390-312-12-0]
> open error **
> ERROR:shared.c:346:shm_semaphores_init: assertion failed:
> (tmp_shared != NULL)
> 
> ** (/usr/lib/mono/2.0/gmcs.exe:15941): WARNING **: Thread (nil) may
> have been prematurely finalized
> Stacktrace:
> 
> 
> ** (/usr/lib/mono/2.0/gmcs.exe:15941): WARNING **: Thread (nil) may
> have been prematurely finalized
> 
> Native stacktrace:
> 
> 	/usr/bin/mono [0x429f80]
> 	[0x7fbe7bf8]
> 	/lib/libc.so.6(gsignal+0x2e) [0x401f4536]
> 	/lib/libc.so.6(abort+0x128) [0x401f7c94]
> 	/usr/lib/libglib-2.0.so.0(g_assertion_message+0xe4)
> [0x40097210] /usr/lib/libglib-2.0.so.0(g_assertion_message_expr+0x4a)
> [0x4009782a] /usr/bin/mono [0x521ed4]
> 	/usr/bin/mono [0x5086de]
> 	/usr/bin/mono(mono_once+0x7c) [0x51bcb0]
> 	/usr/bin/mono [0x508374]
> 	/usr/bin/mono [0x520a8c]
> 	/usr/bin/mono [0x4afa2a]
> 	/usr/bin/mono(mono_runtime_init+0x2e) [0x4b79b2]
> 	/usr/bin/mono [0x54a662]
> 	/usr/bin/mono(mono_main+0x6b0) [0x41660c]
> 	/lib/libc.so.6(__libc_start_main+0xc8) [0x401ddd78]
> 	/usr/bin/mono [0x415818]
> 
> Debug info from gdb:
> 
> 
> =================================================================
> Got a SIGABRT while executing native code. This usually indicates
> a fatal error in the mono runtime or one of the native libraries
> used by your application.
> =================================================================

That it freaks out like this is probably a bug, not sure if SIGABRT is
ok for expected fatal conditions.

The issue is that some (but not all) buildds do not have a writable
home-directory. The Mono runtime is emulating some I/O features that
Microsoft .NET supports using that .wapi directory in $HOME. Most
applications don't need this emulation though, so either the emulation
should be disabled or a writable home-directory set. This common issue
is also mentioned in the Debian CLI Policy §4.3 [0]

The recommended version is now to disable it using:
export MONO_DISABLE_SHM=1

> 
> /bin/sh: line 1: 15941 Aborted                 /usr/bin/gmcs
> /t:library /out:/build/buildd/gdcm-2.0.10/debian/build-python2.5/bin/./gdcm_csharp.dll
> *.cs
> make[3]: *** [bin/./gdcm_csharp.dll] Error 134
> make[3]: Leaving directory
> `/build/buildd/gdcm-2.0.10/debian/build-python2.5' make[2]: ***
> [Wrapping/Csharp/CMakeFiles/GDCMCSharp.dir/all] Error 2 make[2]: ***
> Waiting for unfinished jobs.... ...
> 
>   I do not have access to those platforms. Does anyone knows what
> could be going on wrong ? The .cs files are automatically generated by
> SWIG (www.swig.org)
> 
> Thanks,

One related note, I did a short check of the gdcm source packages and
noticed it doesn't handle "Mono architectures". Mono is not available
for all Debian architectures. It supports all except: m68k, hppa and
alpha. This means your Build-Depends line has to cope with that, to
only pull the mono deps in when it's a Mono arch. At the same time the
configure script/call has to optionally skip the building of the Mono
binding, else it will FTBFS on the named unsupported archs.

-- 
Regards,

Mirco 'meebey' Bauer

PGP-Key ID: 0xEEF946C8

FOSS Developer    meebey@meebey.net  http://www.meebey.net/
PEAR Developer    meebey@php.net     http://pear.php.net/
Debian Developer  meebey@debian.org  http://www.debian.org/


Reply to: