[Mono-list] Compile mono 1.9.1 for arm linux

Chen, Michael (Dongliang) micchen2 at cisco.com
Thu Jul 24 10:39:09 EDT 2008


Tim,

Would it be easy to install scratchbox with maemo sdk?

Thanks,
Dongliang


-----Original Message-----
From: Tim [mailto:timcussins at eml.cc] 
Sent: Thursday, July 24, 2008 10:14 AM
To: Chen, Michael (Dongliang)
Cc: mono-list
Subject: RE: [Mono-list] Compile mono 1.9.1 for arm linux

Sorry mate - sb installation is long gone, so can't get that info for
you :(


On Thu, 2008-07-24 at 09:59 -0400, Chen, Michael (Dongliang) wrote:
> 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