Da Raspberry Pi er i stand til at køre en fuld Linux distribution, så er dens potentiale som et udviklingsværktøj enormt. Pi understøtter ikke kun de mainstream-kompilerede sprog som C, C ++ og Java, det understøtter også populære script-sprog som Python, Perl og Lua. Pi'en kan også bruge nogle af de mindre kendte (men lige så kraftfulde) kompilerede sprog som Googles Go-sprog og C #. Ved hjælp af sidstnævnte på Raspberry Pi er enkel takket være open source Mono projektet.

Mono er et sæt værktøjer (herunder en C # compiler og Common Language Runtime), der bruges til at oprette ".NET" kompatible programmer baseret på de offentliggjorte ECMA standarder. I det væsentlige lader du dig kompilere og køre C # kode på Linux, og de resulterende binære filer er fuldt kompatible med Microsoft.NET.

For at installere Mono på Raspberry brug:

 sudo apt-get installation mono-complete 

Det næste skridt er at kompilere standard "Hello World" -programmet. Opret en fil kaldet "hello.cs" ved hjælp af din yndlings teksteditor. For at oprette det med nano, skriv:

 nano hello.cs 

Skær og indsæt følgende kode:

 bruger system; offentlig klasse HelloWorld {static public void Main () {Console.WriteLine ("Hello Make Tech Easier"); }} 

C # er et objektorienteret sprog, hvilket betyder, at alt er defineret i en klasse. Koden ovenfor opretter en klasse kaldet "HelloWorld", og definerer en funktion inden for den kaldte "Main". Main () er altid udgangspunktet for C # programmer. "Console.WriteLine" udskriver tekst ud til terminalen (konsol).

For at kompilere programtypen:

 mcs hello.cs 

Dette vil oprette en fil kaldet "hello.exe" i den aktuelle mappe. Normalt i Linux, binære filer bruger ikke ".exe" udvidelsen, det er noget, der kommer fra DOS og Windows. Hvis du kontrollerer filtypen "hello.exe", vil du se, at det faktisk er en Intel-eksekverbar:

 fil hello.exe 

Udgangen viser, at "hello.exe" er en Mono / .Net-enhed, der blev bygget til at køre på en pc med Windows, ved hjælp af en Intel-processor. Men vi kompilerede det på Linux, ved hjælp af en ARM-processor!

Dette skyldes, at .NET rent faktisk bruger et mellemliggende sprog, som fortolkes af Common Language Runtime. Begyndelsen af ​​.exe-filen er den faktiske Intel / Windows-kode, som automatisk starter runtime og tillader resten af ​​programmet (som mellemkoden) at køre.

Den officielle måde at starte programmet på en Raspberry på er via "mono" kommandoen:

 mono hello.exe 

Og som du ville forvente, vil udgangen vise "Hello Make Tech Easier" i terminalen. Da output fra Mono er binær kompatibel med Windows, kan du kopiere filen "hello.exe" til en Windows-pc og køre den direkte.

Det er også muligt at skrive GUI programmer ved hjælp af GTK. Men først skal du installere bindingerne mellem Mono og GTK:

 sudo apt-get install gtk-sharp2 

Opret en fil kaldet "hellogtk.cs" med følgende kode i den:

 ved hjælp af Gtk; bruger system; klasse Hej {static void Main () {Application.Init (); Vindue vindue = nyt vindue ("Hej MTE"); window.Show (); Application.Run (); }} 

Dette er et meget, meget simpelt GTK program, der åbner et nyt vindue. For at kompilere det skriv:

 mcs hellogtk.cs -pkg: gtk-sharp-2.0 

"Pkg" -flaget fortæller Mono, at dette program skal bruge GTK-værktøjskassen. For at køre "hellogtk.exe" skal du sørge for, at skrivebordet kører på din Pi. Fra enten filhåndtering eller fra en terminal, der startes fra skrivebordet, skal du køre det binære.

Et lille vindue åbnes med titlen "Hello MTE." App'en gør ikke noget andet, men det viser, at du kan skrive GUI-programmer på din Pi ved hjælp af C #.

Mono har et tvær-platform IDE søsterprojekt, kendt som MonoDevelop. Projekterne gør det nemt at skrive desktop og ASP.NET Web applikationer på Linux, Windows og Mac OSX. Det er også tilgængeligt på Raspberry Pi. For at installere det skal du skrive følgende i en terminal:

 sudo apt-get install monodevelop 

Hvis du sidder fast ved hjælp af Mono, har projektets support side links til fora, mailinglister og FAQ. MonoDevelop har også omfattende dokumentation og en FAQ-side.