Ich habe viel über das Ausführen von Mono/.NET-Code auf dem Raspberry Pi gesprochen. Ist es tatsächlich gelungen, Mono-Code auf einem Raspberry Pi auszuführen?
Auf ihrer Website listen sie verschiedene Linux-Distributionen auf, die auf dem Gerät funktionieren, und einige dieser Distributionen enthalten Mono. Es ist jedoch nicht detailliert, ob Mono daran arbeitet.
Gibt es eine funktionierende Implementierung?
Die Leute auf dem Raspberry Pi Board sind melden, dass Mono tatsächlich funktioniert , zumindest für einfache Anwendungen.
Ich habe es geschafft, meinen Delta Forth .NET - Compiler unter Debian 6.0 (Squeeze) und Mono auszuführen. Es funktionierte einwandfrei bei voller Binärkompatibilität. Das einzige, was ich tun musste, war, den Code für .NET 3.5 neu zu kompilieren (statt 4.0), da Mono unter Debian in Bezug auf .NET-Versionen ein wenig nachlässt.
Der Compiler ist keine triviale .NET-Anwendung, daher war ich froh, den Compiler auf meinem kleinen Raspberry Pi tatsächlich in Aktion zu sehen.
Die tatsächlichen Schritte, die ich unternommen habe, um die Magie zu verwirklichen, waren
Das ist alles. Der schwierigste Teil dieser Bemühungen bestand darin, die Dateien von meinem Windows-Computer mithilfe eines Flash-Laufwerks auf den Raspberry Pi zu übertragen :-)
Mono auf dem Raspberry Pi ist möglich und relativ einfach einzurichten. Im Folgenden wird davon ausgegangen, dass Sie unter Debian sind. Dies ist aus meinem Blog das bietet eine Reihe von Raspberry Pi-Tutorials
Ein Hinweis: Die derzeit verfügbare Standard-Mono-Laufzeitumgebung unterstützt nur .NET 3.5, sofern Sie nicht selbst aus dem Quelltext kompilieren.
Sie möchten also mit der Entwicklung einiger Anwendungen für Ihren Raspberry Pi beginnen, aber Ihre Programmierkenntnisse sind auf die modernen .NET-Sprachen wie VB.NET und C # beschränkt. Kein Problem!! Willkommen in der Welt von Mono, einer plattformübergreifenden Open-Source- und kompatiblen Version des .NET-Frameworks. Durch die Verwendung einer Entwicklung IDE wie Visual Studio oder noch besser MonoDevelop können Sie EXE-Dateien erstellen, die auf Ihrem Raspberry Pi ausgeführt werden können. Sie müssen nur die Mono-Laufzeiten auf dem Raspberry Pi installieren. Dazu geben wir folgende Zeilen ein.
Sudo apt-get update
Sudo apt-get install mono-runtime
Wie bereits in anderen Lernprogrammen erwähnt, wird in der ersten Zeile der APT-GET-Paketmanager so aktualisiert, dass er die neuesten Quellen zum Herunterladen der Pakete verwendet. Die zweite Zeile installiert und bereitet die Laufzeiten für die Verwendung vor. Das ist es jetzt, um eine von Mono entwickelte EXE-Datei auszuführen. Stellen Sie dem Befehl einfach das Wort
mono
voran, wie unten gezeigt.
mono myprogram.exe
Ja. Ich habe erfolgreich Mono-basierte Winforms- und Webforms-Apps (XSP) ausgeführt. Ausführliche Anleitungen finden Sie in meinem Blog
http://www.amazedsaint.com/2013/04/hack-raspberry-pi-how-to-build.html
Hard Float-Unterstützung ist jetzt in Mono 3.2.7:
http://www.raspberrypi.org/phpBB3/viewtopic.php?t=62496&p=468500
Die neueste Quelle kann von git ..__ installiert werden und sollte etwa so aussehen:
(vorherige Mono-Installationen zuerst entfernen)
Sudo apt-get update
Sudo apt-get install git build-essential automake autoconf libtool gettext
git clone git://github.com/mono/mono.git
cd mono
./autogen.sh --prefix=/usr/local
make get-monolite-latest
make EXTERNAL_MCS="${PWD}/mcs/class/lib/monolite/gmcs.exe"
Sudo make install
So sieht "Mono -V" auf meiner Himbeere aus:
Mono JIT compiler version 3.4.0 (master/ae165c5 Thu Mar 13 01:20:37 UTC 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
Ein schneller Test scheint gut zu funktionieren:
csharp> Math.Pow(2,4);
16
Auf meinem Raspberry Pi mit dem Fedora 18-Remix brauchte ich nur:
# yum -y install mono-devel
Überprüfen:
# csharp
Mono C# Shell, type "help;" for help
Enter statements below.
csharp> Console.WriteLine("Hello, I am PI");
Hello, I am PI
csharp>
Ich konnte den WCF-Dienst mit EntityFramework ausführen, das die auf dem Pi installierte MySql-Datenbank verwendet. Es war nur ein Testprojekt, aber die Leistung war gut.
Ich konnte mein .NET-Exe auf Raspberry Pi (Debian) ausführen.
Installieren Sie mono - http://logicalgenetics.com/raspberry-pi-and-mono-hello-world/
führen Sie dann Ihr Exe als mono something.exe
aus.
Sie können die x86-Version von Mono auf dem Raspberry Pi mit der Software ExaGear Desktop ausführen.
Es erlaubt, fast alle x86-Apps auszuführen und sogar Wine zu installieren, um Windows-Apps auszuführen.
Sie sagen, dass Firefox schneller arbeitet als selbst ...