Building Mono from Source
# I'm going to do everything as root su - # grab minimal dependencies apt-get install build-essential mono-runtime autoconf libtool automake # import required certificates mozroots --import --ask-remove --machine # Now check out the Mono tree (this alone will take ages if you have a slow SD card) git clone git://github.com/mono/mono.git cd mono ./autogen.sh --prefix=/usr/local # grab the bootstrap compiler make get-monolite-latest # now is a nice time to go off and take a long stroll by the beach make # use this instead if you have distcc like me, it will speed up building the native bits: # DISTCC_NODES=“node1 node2 node3 node4 localhost” make -j5 CC=distcc # now install it locally make install # Should report 3.10.1 (or above) and hardware floating point mono --version
Here’s my current sample output on a Pi:
Mono JIT compiler version 3.10.1 (master/8da186e Sat Oct 25 19:32:35 WEST 2014) Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: normal Notifications: epoll Architecture: armel,vfp+hard Disabled: none Misc: softdebug LLVM: supported, not enabled. GC: sgen
A Note on LLVM support
It’s possible to set up the Mono LLVM fork to have Mono use LLVM instead of its built-in JIT, but it requires picking the right Git branch and passing both
mono itself and is not very useful on the Pi, since the trade-offs in RAM/performance are debatable. Start up time, in particular, seems to take a sizable hit.
myget.org to fetch the nightly vNext package builds (by Eilon Lipton, who works at Microsoft), so your mileage may vary depending on how stable the nightlies are.
# grab K tools curl https://raw.githubusercontent.com/aspnet/Home/master/kvminstall.sh | sh && source ~/.kre/kvm/kvm.sh kvm upgrade # add the package repo certificates sudo certmgr -ssl -m https://nuget.org sudo certmgr -ssl -m https://www.myget.org mozroots --import --sync # run the samples git clone https://github.com/aspnet/home cd cd home/samples/HelloWeb kpm restore -s https://www.myget.org/F/aspnetvnext/