[Mono-list] [Mono-dev] Cross-compiling Mono for ARM

Gutemberg Ribeiro gutemberg at fgrit.com
Fri Jun 19 19:44:32 UTC 2015

Yes… We was looking at it and looks that they changed lots of standard headers…

Unfortunately, here in Brazil they don’t have a dev team, only in France and take ages to get a reply…

Will try get them on table and see what we can do…

Thank you,

Best regards,

From: Rafael Teixeira [mailto:monoman at gmail.com]
Sent: Friday, June 19, 2015 2:52 PM
To: Gutemberg Ribeiro <gutemberg at fgrit.com>
Cc: Andres G. Aragoneses <knocte at gmail.com>; mono-devel-list at lists.xamarin.com; mono-list at lists.xamarin.com
Subject: Re: [Mono-dev] Cross-compiling Mono for ARM

From these:
...arm-elf/include/stdint.h:243: error: conflicting types for 'intptr_t'
...arm-elf/include/stdint.h:244: error: conflicting types for 'uintptr_t'

it is pretty clear that ingenico messed with the standard header files, and guard clauses (#IFDEFs) aren't thus able to avoid such duplications, You'll need to see how to avoid the duplication but that may instead define things wrongly for symbols mono uses.

I wish you luck,

Rafael Teixeira

On Fri, Jun 19, 2015 at 2:11 PM, Gutemberg Ribeiro <gutemberg at fgrit.com<mailto:gutemberg at fgrit.com>> wrote:
Hello Andres...

I think I finally got it compiled but, now when I'm including on my C project the mono headers, my app don't compile anymore:

In file included from ../../Desktop/mono-build/usr/local/include/mono-2.0/mono/utils/mono-publib.h:45,
                 from ../../Desktop/mono-build/usr/local/include/mono-2.0/mono/metadata/appdomain.h:13,
                 from ../../Desktop/mono-build/usr/local/include/mono-2.0/mono/jit/jit.h:11,
                 from C:/Users/Gutemberg/IngeDev7_workspace/MonoWrapper/Inc/mono_loader.h:1,
                 from Src/Entry.c:43:
/cygdrive/c/Ingenico/IngeDev_7.22.2.1/plugins/com.ingenico.ingedev.telium.bin.win32.gnuarm.v434_7.20.0.1/os/win32/GNUARM/4.3.4/bin/../lib/gcc/arm-elf/4.3.4/../../../../arm-elf/include/stdint.h:243: error: conflicting types for 'intptr_t'
C:/Ingenico/TeliumSDK/SDK<>: error: previous declaration of 'intptr_t' was here
/cygdrive/c/Ingenico/IngeDev_7.22.2.1/plugins/com.ingenico.ingedev.telium.bin.win32.gnuarm.v434_7.20.0.1/os/win32/GNUARM/4.3.4/bin/../lib/gcc/arm-elf/4.3.4/../../../../arm-elf/include/stdint.h:244: error: conflicting types for 'uintptr_t'
C:/Ingenico/TeliumSDK/SDK<>: error: previous declaration of 'uintptr_t' was here
C:\Ingenico\IngeDev_7.22.2.1\plugins\com.ingenico.ingedev.generic.bin.win32_7.16.0.1\os\win32\tools\make.exe: *** [Obj/GNU_ARM_DEBUG/Entry.o] Error 1
C:\Ingenico\IngeDev_7.22.2.1\plugins\com.ingenico.ingedev.generic.bin.win32_7.16.0.1\os\win32\tools\make.exe: Target `build' not remade because of errors.

Any clues?


-----Original Message-----
From: Andres G. Aragoneses [mailto:knocte at gmail.com<mailto:knocte at gmail.com>]
Sent: Friday, June 19, 2015 8:58 AM
To: Gutemberg Ribeiro <gutemberg at fgrit.com<mailto:gutemberg at fgrit.com>>
Subject: Re: Cross-compiling Mono for ARM

On 18/06/15 21:03, Gutemberg Ribeiro wrote:
> Hello guys,
> I'm trying to cross-compile (from Ubuntu 14.04) Mono for ARM following
> this tutorial
> http://www.mono-project.com/docs/about-mono/supported-platforms/arm/
> but the links that show how configure ScratchBox are outdated and I
> can't find anything on the internet on how to successful setup an
> environment and cross-compile mono for ARM...
> The idea is to build it as a static library so I can use it embedded
> as suggested here:
> http://www.mono-project.com/docs/advanced/embedding/
> For the sake of information, the target ARM device runs a proprietary
> striped down distribution based on debian and we have no access to its
> terminal or any kind of access to the OS. It is a payment terminal
> from www.ingenico.com<http://www.ingenico.com> <http://www.ingenico.com> and it has an ARM9
> processor and uses a proprietary SDK that looks like uses GNU ARM
> 4.3.4 toolchain with an IDE based on Eclipse as you can see in the following picture:
> The only way we have to use mono on it is by adding it as a static lib
> and import the header in order to embedded it, create a thin C layer
> that will only bootstrap the .net app (all their API calls will be
> PInvoked after add Mono to it).
> Anyone has has a good documentation on:
> 1.How to setup a cross-compile environment on Ubuntu
> 2.Compile Mono to ARM as an static library
> Any help would be very appreciated.
> Thank you very much!
> Best regards,

Hey, I recommend you to put more details on what you have already tried.
For example the details you already posted on the gitter channel when you were talking with Miguel about using CC='armv6-cc' ./configure.

Mono-devel-list mailing list
Mono-devel-list at lists.ximian.com<mailto:Mono-devel-list at lists.ximian.com>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-list/attachments/20150619/290852cf/attachment-0001.html>

More information about the Mono-list mailing list