[Mono-list] Compile mono 1.9.1 for arm linux
Chen, Michael (Dongliang)
micchen2 at cisco.com
Thu Jul 24 09:59:55 EDT 2008
Tim,
I am trying to compile it for Freescale iMX21ads. Would you please check
which version of gcc/autoconf you used on ubuntu?
Thanks,
Dongliang
-----Original Message-----
Nice one.
I was building mono from the svn head, so no specific version sorry -
this was maybe a couple of months after 1.2.6 I think.
For N800 I was building mono using scratchbox with maemo sdk. This was
all on ubuntu gutsy.
What's your target?
Cheers,
Tim
On Thu, 2008-07-24 at 08:43 -0400, Chen, Michael (Dongliang) wrote:
> Tim,
>
> Thank you very much for your help. That seems fix the linking issue.
Now
> I got an error, see below.
>
> Would you mind let me know which version of mono you were compiling?
> What's the building environment, like gcc version, which Linux
> distribution you used?
>
> Thanks in advance,
> Dongliang
>
> ./configure --build=arm-linux --with-tls=pthread
> ...
> Make
> ...
> gcc -I../.. -I../../libgc/include -pthread -I/usr/include/glib-2.0
> -I/usr/lib/glib-2.0/include -g -O2 -fno-strict-aliasing
> -Wdeclaration-after-statement -g -Wall -Wunused -Wmissing-prototypes
> -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wcast-align
> -Wwrite-strings -mno-tls-direct-seg-refs -o genmdesc
genmdesc-genmdesc.o
> genmdesc-helpers.o ../../mono/metadata/.libs/opcodes.o -pthread
> ../../mono/utils/.libs/libmonoutils.a -lgthread-2.0 -lrt -lglib-2.0
-ldl
> -lpthread -lm
> ./genmdesc ./cpu-arm.md cpu-arm.h arm_cpu_desc
>
> ** ERROR **: Invalid opcode 'arm_rsbs_imm' at line 275 in ./cpu-arm.md
>
> aborting...
> make[3]: *** [cpu-arm.h] Aborted
> make[3]: Leaving directory `/work/mono/src/mono-1.9.1/mono/mini'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/work/mono/src/mono-1.9.1/mono'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/work/mono/src/mono-1.9.1'
> make: *** [all] Error 2
>
> -----Original Message-----
> On Wed, 2008-07-23 at 13:58 -0400, Chen, Michael (Dongliang) wrote:
> > Hi all,
> >
> > I am new to mono. I was trying to compile mono 1.9.1 for arm
> processor.
> > I downloaded mono-1.9.1.tar.bz2, uncompressed it. I got the
following
> > error while compiling it.
> >
> > If any one could point out what I did wrong and how to fix this
issue,
> > I'd appreciate it.
> >
> > ./configure --build=arm-linux
> > ...
> >
> > make
> > ...
> > /bin/sh ../../libtool --tag=CC --mode=link gcc -g -O2
> > -fno-strict-aliasing -Wdeclaration-after-statement -g -Wall -Wunused
> > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes
> > -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual
> > -Wcast-align -Wwrite-strings -mno-tls-direct-seg-refs -o pedump
> > pedump.o libmonoruntime.la ../io-layer/libwapi.la
> > ../utils/libmonoutils.la ../../libgc/libmonogc.la -pthread
> -lgthread-2.0
> > -lrt -lglib-2.0 -lm -ldl -lpthread -lm
> > gcc -g -O2 -fno-strict-aliasing -Wdeclaration-after-statement -g
-Wall
> > -Wunused -Wmissing-prototypes -Wmissing-declarations
> -Wstrict-prototypes
> > -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual
> > -Wcast-align -Wwrite-strings -mno-tls-direct-seg-refs -o pedump
> pedump.o
> > -pthread ./.libs/libmonoruntime.a ../io-layer/.libs/libwapi.a
> > ../utils/.libs/libmonoutils.a ../../libgc/.libs/libmonogc.a
> > -lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread -lm
> > ./.libs/libmonoruntime.a(reflection.o): In function
> > `create_dynamic_mono_image':
> > /work/mono/src/mono-1.9.1/mono/metadata/reflection.c:4340: undefined
> > reference to `GC_local_malloc'
> > ./.libs/libmonoruntime.a(reflection.o): In function
> > `mono_image_basic_init':
> > /work/mono/src/mono-1.9.1/mono/metadata/reflection.c:4425: undefined
> > reference to `GC_local_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_new_ptrfree_box':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3447: undefined
> > reference to `GC_local_malloc_atomic'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_new_ptrfree':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3423: undefined
> > reference to `GC_local_malloc_atomic'
> > ./.libs/libmonoruntime.a(object.o): In function
> `mono_object_new_fast':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3415: undefined
> > reference to `GC_local_gcj_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_spec':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3329: undefined
> > reference to `GC_local_gcj_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> `mono_object_allocate':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3304: undefined
> > reference to `GC_local_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_spec':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3329: undefined
> > reference to `GC_local_gcj_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_ptrfree':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3321: undefined
> > reference to `GC_local_malloc_atomic'
> > ./.libs/libmonoruntime.a(object.o): In function
> `mono_object_allocate':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3304: undefined
> > reference to `GC_local_malloc'
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3304: undefined
> > reference to `GC_local_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_ptrfree':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3321: undefined
> > reference to `GC_local_malloc_atomic'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_spec':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3329: undefined
> > reference to `GC_local_gcj_malloc'
> > ./.libs/libmonoruntime.a(object.o): In function
> > `mono_object_allocate_ptrfree':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3321: undefined
> > reference to `GC_local_malloc_atomic'
> > ./.libs/libmonoruntime.a(object.o): In function
> `mono_object_allocate':
> > /work/mono/src/mono-1.9.1/mono/metadata/object.c:3304: undefined
> > reference to `GC_local_malloc'
> > ./.libs/libmonoruntime.a(boehm-gc.o): In function
> `mono_gc_alloc_fixed':
> > /work/mono/src/mono-1.9.1/mono/metadata/boehm-gc.c:332: undefined
> > reference to `GC_local_malloc'
> > ../utils/.libs/libmonoutils.a(mono-hash.o): In function
> > `g_hash_table_resize':
> > /work/mono/src/mono-1.9.1/mono/utils/mono-hash.c:724: undefined
> > reference to `GC_local_malloc'
> > ../utils/.libs/libmonoutils.a(mono-hash.o): In function
> > `mono_g_hash_table_new_full':
> > /work/mono/src/mono-1.9.1/mono/utils/mono-hash.c:188: undefined
> > reference to `GC_local_malloc'
> > /work/mono/src/mono-1.9.1/mono/utils/mono-hash.c:199: undefined
> > reference to `GC_local_malloc'
> >
>
../utils/.libs/libmonoutils.a(mono-hash.o):/work/mono/src/mono-1.9.1/mon
> > o/utils/mono-hash.c:339: more undefined references to
> `GC_local_malloc'
> > follow
> > collect2: ld returned 1 exit status
> > make[3]: *** [pedump] Error 1
> > make[3]: Leaving directory `/work/mono/src/mono-1.9.1/mono/metadata'
> > make[2]: *** [all-recursive] Error 1
> > make[2]: Leaving directory `/work/mono/src/mono-1.9.1/mono'
> > make[1]: *** [all-recursive] Error 1
> >
> >
> >
> > I am using Fedora Core 8
> > gcc --version
> > gcc (GCC) 4.1.2 20070925 (Red Hat 4.1.2-33)
> > Copyright (C) 2006 Free Software Foundation, Inc.
> > This is free software; see the source for copying conditions. There
> is
> > NO
> > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
> > PURPOSE.
> >
> > uname -a
> > Linux 2.6.25.9-40.fc8 #1 SMP Fri Jun 27 16:25:53 EDT 2008 i686 i686
> i386
> > GNU/Linux
> >
>
> When I was building for N800, I had to configure with
>
> --with-tls=pthread
>
> to dodge those missing GC_local_xxx references. Can't tell you why
> exactly :P
>
> Tim
>
- - - - - Cisco - - - - -
This e-mail and any attachments may contain information which is confidential,
proprietary, privileged or otherwise protected by law. The information is solely
intended for the named addressee (or a person responsible for delivering it to
the addressee). If you are not the intended recipient of this message, you are
not authorized to read, print, retain, copy or disseminate this message or any
part of it. If you have received this e-mail in error, please notify the sender
immediately by return e-mail and delete it from your computer.
More information about the Mono-list
mailing list