[Mono-dev] Compiling mono on embedded platform fails (ppc32)

Johannes Paschold oldpasch at gmail.com
Tue Aug 14 11:45:53 EDT 2007


Hello Andreas,

thanks for your last mail.
To get more specific: I have 2 problems:

First one: Is exactly the same like this:

http://bugzilla.ximian.com/show_bug.cgi?id=58453

thats why i reopened this bug from state NEEDINFO.

To make things short: exceptions-ppc.c expects a specific ucontext
struct layout which does not fit to mine. So this is probably a
problem on older systems?
Despite of that it should be possible to change the code to fit my
ucontext.h if one knows WHAT to change and in which way.

2. monoburg crashes with Segmentation fault.

I compiled and installed pkgconfig, bison and glib 2.12 (all necessary
dependencies for mono) and do a simple:
./configure (everything goes fine)
make

make aborts when executing the built monoburg binary:
./monoburg ./sample.brg > sample.c

to solve this i just put in a sample.c from a different compilation
(on ppc32 too) not knowing what side effects this could raise.
Is crashing of monoburg a known problem somewhere?

Regards jOe


> Hello Johannes,
>
> Am 08.08.2007 um 17:44 schrieb Johannes Paschold:
>
> > i have a problem compiling mono on my embedded linux
>
> > I compiled and installed bison, pkg-config and glib 2.4.8 and
> > configured mono successfully.
> > When running make, compilation fails with the below error message:
> >
> >
> > exceptions-ppc.c:486: warning: unused variable `p'
> > exceptions-ppc.c:506: warning: `offset' might be used uninitialized
> > in this function
> > exceptions-ppc.c:590: warning: visibility attribute not supported
> > in this configuration; ignored
> > exceptions-ppc.c: In function `mono_jit_walk_stack':
> > exceptions-ppc.c:640: warning: visibility attribute not supported
> > in this configuration; ignored
> > exceptions-ppc.c: In function `ves_icall_get_frame_info':
> > exceptions-ppc.c:711: warning: visibility attribute not supported
> > in this configuration; ignored
> > exceptions-ppc.c: In function `mono_arch_handle_exception':
> > exceptions-ppc.c:756: structure has no member named `uc_regs'
> > exceptions-ppc.c:757: structure has no member named `uc_regs'
> > exceptions-ppc.c:758: structure has no member named `uc_regs'
> > exceptions-ppc.c:759: structure has no member named `uc_regs'
> > exceptions-ppc.c :765: structure has no member named `uc_regs'
> > exceptions-ppc.c:766: structure has no member named `uc_regs'
> > exceptions-ppc.c:767: structure has no member named `uc_regs'
> > exceptions-ppc.c:768: structure has no member named `uc_regs'
> > exceptions-ppc.c: In function `mono_arch_ip_from_context':
> > exceptions-ppc.c:776: structure has no member named `uc_regs'
> > make[4]: *** [exceptions-ppc.lo] Error 1
> > make[4]: Leaving directory `/tmp/mono- 1.2.4/mono/mini'
> > make[3]: *** [all] Error 2
> > make[3]: Leaving directory `/tmp/mono-1.2.4/mono/mini'
> > make[2]: *** [all-recursive] Error 1
> > make[2]: Leaving directory `/tmp/mono-1.2.4/mono'
> > make[1]: *** [all-recursive] Error 1
> > make[1]: Leaving directory `/tmp/mono-1.2.4'
> > make: *** [all] Error 2
> >
> > I found only 3 hits with google which gave me no solution for that
> > problem. Does anyone can help me out with that problem? Is it ppc
> > specific?
>
> Maybe your embedded platform is ppc64 based? For Linux/ppc64 the
> signal structs are different when compiling 64-bit (they did work
> unchanged 32-bit on Debian Linux/ppc64). Unfortunately some breaking
> changes were introduced since my latest patch snapshot (the relevant
> code was moved to new functions) and I haven't updated it in Bugzilla
> yet with no-one showing any interest in it.
>
> http://bugzilla.ximian.com/show_bug.cgi?id=81455
>
> However, if you do confirm that you are on ppc64 it will likely not
> work with only the struct changes applied but feel free to contribute
> to my port effort, I'd appreciate that.
>
>
> > Is it possible to build mono from the sources without having a mono
> > installation? The readme says this should be possible if it's an
> > official release (which 1.2.4 i think is?) and not a snapshot.
>
> Short answer: yes. The source tarball bootstraps itself automatically
> when mcs is not available, and for SVN the README has info on getting
> the latest monolite.
>
> Andreas



More information about the Mono-devel-list mailing list