I mentioned previously that I got Mono compiling under the Android build environment. I have also submitted all the changes I made to Mono back to their team. In addition, all external changes are hosted on Google code. The external changes were filling holes in Bionic, setting up a config.h that works on Android, and converting the Makefile to an Android.mk. Click here to go to the AndroidMono repository.
The build instructions are straightforward, and assumes you have a Release 1.0 repository (not Master or Cupcake) already set up:
- In a shell, go to your mydroid/external directory and type:
- svn co http://androidmono.googlecode.com/svn/trunk/ androidmono
- cd androidmono
- svn co svn://anonsvn.mono-project.com/source/trunk/mono mono
- Apply the androidmono.patch file to the mono directory make the necessary changes to the mono project. (This won't be necessary once they accept my patch)
- Run make in your mydroid directory.
Now you should have a mono and libmono.so! The build process does not create the managed assemblies. That needs to still be done the old fashioned configure/make way. The resultant mono binary will look for the managed assembles in /data/data/com.koushikdutta.mono/assets/lib/mono/2.0/(mscorlib.dll).