[Mono-list] Problems on MacOSX, bus error in mint

Cameron Heide cheide@shaw.ca
Sat, 20 Mar 2004 18:16:17 -0700


I have been trying to get Mono 0.31 working under OS X and it compiles
and installs, but then it generates a bus error when I try to actually
compile something with mcs.  It works to a certain degree, as I can
run it with --help and get mcs usage information, or no parameters and
get the "No files to compile were specified" error, it just fails when
I supply an actual .cs file to compile.  The source code used doesn't
seem to matter, as it still crashes on even the simplest examples in

Running mint and mcs.exe in gdb produces the following:

(gdb) run
Starting program: /opt/mono/bin/mint /opt/mono/bin/mcs.exe switch.cs
Reading symbols for shared libraries warning: Trying to remove a 
section from the ordered section list that did not exist at 0x0.
++++++++. done
** (/opt/mono/bin/mcs.exe:13889): WARNING **: The handle daemon didnt 
start up properly
** (/opt/mono/bin/mcs.exe:13889): WARNING **: Failed to attach shared 
memory! Falling back to non-shared handles
Program received signal EXC_BAD_ACCESS, Could not access memory.
[Switching to process 13889 thread 0x2303]
0x004b0a30 in ves_exec_method_with_context (frame=0xf03f9c70, 
context=0xf0401b90) at interp.c:3585
3585                            g_assert (MONO_CLASS_IS_ARRAY 
(gdb) p o
$1 = (MonoArray *) 0x4e9f
(gdb) p *o
$2 = {
   obj = {
     vtable = 0x0,
     synchronisation = 0x0  },
   bounds = 0x0,
   max_length = 0,
   vector = 0x4eaf

Before considering it a bug, I should make sure I'm doing everything
right though.  I'm new to both OS X and Mono, so there's plenty of room
for error...  :-)

The system is an iBook G4 with OS X 10.3.3 and Xcode 1.1 installed.
I also have glib-2.2.1 and pkg-config installed via Fink, the Boehm
GC 6.2 (and I am specifying --with-gc=boehm), and ICU 2.8.

I've tried both the instructions on the "Installing Mono on Mac OS X"
page using CVS, and the plain untar/configure/make/make install on the
0.31 distribution, and they both wind up with the same problem.  I'm
not using the JIT (slight bug here, using --with-jit=no on the
configure actually forces it to use the JIT).  It's installed to
/opt/mono instead of /usr/local, but I've got /opt/mono/lib on the
LD_LIBRARY_PATH (if that matters).

Is there anything I'm missing or any further information that would