Added:
/wiki/MonoSbDevKit243.wiki
=======================================
--- /dev/null
+++ /wiki/MonoSbDevKit243.wiki Fri Feb 26 06:49:51 2010
@@ -0,0 +1,80 @@
+#summary Mono2.4.3 Scratchbox Developer Kit for FREMANTLE
+
+= The Developer Kit =
+
+Scratchbox uses [http://fabrice.bellard.free.fr/qemu/ QEMU] for ARM
emulation, the problem is that some ARM syscalls (242, 264, 299) is not yet
implemented in QEMU. This miss implemented syscalls can cause some problems
in [http://www.mono-project.com/Mcs MCS] turning impossible compile
assemblies for ARM.
+
+[http://www.scratchbox.org/documentation/user/scratchbox-1.0/html/devkit.html
Scratchbox
devkits] provide a set of tools that can be executed on host
instead of target device and thus it reduces time that is used to build
packages.
+
+Before build mono-devkit you must first create HOST target on your
scratchbox environment.
+
+== Creating Host Target ==
+
+First step is prepare the directory to get the mono devkit.
+
+
+{{{
+ # sudo mkdir /scratchbox/devkits/mono
+ # sudo chmod ugo+w /scratchbox/devkits/mono
+}}}
+
+Then login into scratchbox:
+
+{{{
+ # /scratchbox/login
+}}}
+
+And execute this commands:
+
+{{{
+[sbox-FREMANTLE_X86: ~] > sb-conf setup FREMANTLE_HOST -c host-gcc -d
debian-etch:doctools:git:perl:svn -t none
+[sbox-CHINOOK_X86: ~] > sb-conf select FREMANTLE_HOST
+[sbox-FREMANTLE_HOST: ~] > sb-conf rs maemo-sdk-rootstrap_5.0_i386.tgz
+[sbox-FREMANTLE_HOST: ~] > sb-conf install --etc --devkits
+[sbox-FREMANTLE_HOST: ~] > apt-get update
+[sbox-FREMANTLE_HOST: ~] > fakeroot apt-get install maemo-sdk-runtime
+[sbox-FREMANTLE_HOST: ~] > fakeroot apt-get install maemo-sdk-dev
+}}}
+
+Now you can start to try to compile the devkit.
+
+== Build Developer Kit ==
+
+Login into scratchbox if you havent done it yet:
+
+{{{
+ # /scratchbox/login
+}}}
+
+Select HOST target:
+
+{{{
+[sbox-FREMANTLE_X86: ~] > sb-conf select FREMANTLE_HOST
+}}}
+
+Then use garmono to build and install devkit:
+
+{{{
+[sbox-FREMANTLE_HOST: ~] > svn co
svn://anonsvn.mono-project.com/source/trunk/release/garmono
+[sbox-FREMANTLE_HOST: ~] > cd garmono
+[sbox-FREMANTLE_HOST: ~] > make clean
+}}}
+
+Now you need to patch the devkit to:
+
+ * upgrade mono from 2.0.1 to 2.4.3
+ * upgrade the glib from 2.12.2 to 2.20.3 that is the version of glib used
by FREMANTLE
+
+----
+
+== To Be Updated later ==
+
+{{{
+[sbox-FREMANTLE_HOST: ~] > make maemo/devkit
+}}}
+To enable devkit for your ARMEL and X86 targets just type:
+
+{{{
+[sbox-CHINOOK_HOST: ~] > sb-conf setup CHINOOK_ARMEL -f -d
perl:debian-etch:maemo3-tools:cputransp:mono
+[sbox-CHINOOK_HOST: ~] > sb-conf setup CHINOOK_X86 -f -d
perl:debian-etch:maemo3-tools:mono
+}}}