Wie schreibe ich C # -Programme auf einem Raspberry Pi mit Mono
Da der Raspberry Pi eine vollständige Linux-Distribution ausführen kann, ist sein Potenzial als Entwicklungswerkzeug enorm. Das Pi unterstützt nicht nur die gängigen kompilierten Sprachen wie C, C ++ und Java, es unterstützt auch gängige Skriptsprachen wie Python, Perl und Lua. Der Pi ist auch in der Lage, einige der weniger bekannten (aber genauso leistungsstarken) kompilierten Sprachen wie Google's Go-Sprache und C # zu verwenden. Die Verwendung des letzteren auf dem Raspberry Pi ist dank des Open-Source-Mono-Projekts einfach.
Mono ist ein Satz von Werkzeugen (einschließlich eines C # -Compilers und der Common Language Runtime), die verwendet werden, um ".NET" -kompatible Programme zu erstellen, die auf den veröffentlichten ECMA-Standards basieren. Im Wesentlichen können Sie C # -Code unter Linux kompilieren und ausführen, und die resultierenden Binärdateien sind vollständig kompatibel mit Microsoft.NET.
Um Mono auf dem Raspberry zu installieren, benutze:
sudo apt-get installieren Mono-Komplett
Der nächste Schritt besteht darin, das Standardprogramm "Hello World" zu kompilieren. Erstellen Sie mit Ihrem bevorzugten Texteditor eine Datei namens "hello.cs". Um es mit nano zu erstellen, tippe:
Nano hallo.cs
Ausschneiden und fügen Sie den folgenden Code ein:
Verwenden von System; Öffentliche Klasse HelloWorld {statisch public void Main () {Console.WriteLine ("Hello Make Tech Easier"); }}
C # ist eine objektorientierte Sprache, was bedeutet, dass alles innerhalb einer Klasse definiert ist. Der obige Code erstellt eine Klasse namens "HelloWorld" und definiert eine Funktion in der "Main". Main () ist immer der Startpunkt für C # -Programme. "Console.WriteLine" druckt den Text an das Terminal (Konsole).
Um den Programmtyp zu kompilieren:
mcs hallo.cs
Dadurch wird im aktuellen Verzeichnis eine Datei namens "hello.exe" erstellt. Unter Linux verwenden Binärdateien normalerweise nicht die Erweiterung ".exe", sondern etwas, das von DOS und Windows kommt. Wenn Sie den Dateityp "hello.exe" überprüfen, werden Sie feststellen, dass es sich tatsächlich um eine ausführbare Datei von Intel handelt:
Datei Hallo.exe
Die Ausgabe zeigt, dass "hello.exe" eine Mono / .Net-Assembly ist, die für die Ausführung auf einem PC mit Windows mit einem Intel-Prozessor gebaut wurde. Aber wir haben es unter Linux mit einem ARM-Prozessor kompiliert!
Dies liegt daran, dass .NET tatsächlich eine Zwischensprache verwendet, die von der Common Language Runtime interpretiert wird. Der Anfang der .exe-Datei ist aktueller Intel / Windows-Code, der die Laufzeit automatisch startet und den Rest des Programms (als Zwischencode) ausführen lässt.
Der offizielle Weg, um das Programm auf einem Raspberry zu starten, ist über den "Mono" -Befehl:
mono hallo.exe
Und wie zu erwarten, wird die Ausgabe "Hello Make Tech Easier" im Terminal anzeigen. Da die Ausgabe von Mono mit Windows binär kompatibel ist, können Sie die Datei "hello.exe" auf einen Windows-PC kopieren und direkt ausführen.
Es ist auch möglich, GUI-Programme mit GTK zu schreiben. Aber zuerst müssen Sie die Bindungen zwischen Mono und GTK installieren:
sudo apt-get installieren gtk-sharp2
Erstelle eine Datei namens "hellogtk.cs" mit folgendem Code:
mit Gtk; Verwenden von System; Klasse Hallo {static void Main () {Application.Init (); Fensterfenster = neues Fenster ("Hallo MTE"); window.Show (); Anwendung.Run (); }}
Dies ist ein sehr, sehr einfaches GTK-Programm, das ein neues Fenster öffnet. Um es zu kompilieren, tippe:
mcs hellogtk.cs -pkg: gtk-sharp-2.0
Die "pkg" -Flagge weist Mono an, dass dieses Programm das GTK-Toolkit verwenden muss. Um "hellogtk.exe" auszuführen, müssen Sie sicherstellen, dass der Desktop auf Ihrem Pi läuft. Führen Sie die Binärdatei entweder vom Dateimanager oder von einem vom Desktop aus gestarteten Terminal aus.
Ein kleines Fenster öffnet sich mit dem Titel "Hallo MTE". Die App macht nichts anderes, aber es zeigt, dass Sie mit C # GUI-Programme auf Ihrem Pi schreiben können.
Mono hat ein plattformübergreifendes IDE-Schwesterprojekt namens MonoDevelop. Die Projekte ermöglichen das Schreiben von Desktop- und ASP.NET-Webanwendungen unter Linux, Windows und Mac OSX. Es ist auch auf dem Raspberry Pi verfügbar. Um es zu installieren, geben Sie Folgendes in ein Terminal ein:
sudo apt-get installieren monodevelop
Wenn Sie mit Mono nicht weiterkommen, finden Sie auf der Support-Seite des Projekts Links zu den Foren, Mailing-Listen sowie den FAQs. MonoDevelop verfügt auch über eine umfassende Dokumentation und eine FAQ-Seite.