Visul Studio und Raspberry Pi

OP #5697383
Lesenswert?

Hallo zusammen,
Nach einiger Recherche ob man bzw. wie man auf VisualStudio 
programmierte Anwendungen auf dem RPI zum Laufen bringt, kam ich auf 
keinen eindeutigen Pfad..

Ich möchte ein Programm mit c# schreiben, dass mithilfe eines 
Kameramoduls ein Foto schießt und per WLAN an einen PC weiterschickt..

Was wäre hier die smarteste Lösung?
Ich würde mich sehr über ein paar hilfreiche Antworten freuen.
Danke euch schon im Vorhinein.
LG
Gast #5697397
Lesenswert?

Die einzige Möglichkeit C# auf dem RPi (ich nehm mal an da drauf läuft 
kein Windows) zum laufen zu bekommen wäre, es in ein Java-Bytecode zu 
kompilieren. Dabei verlierst du aber die Möglichkeit auf die GPIO 
zuzugreifen und auf deinem RPi muss eine komplette Java RE laufen!!! 
Sollte deine Kamera über USB (z.B. eine WebCam) angeschlossen werden, 
sollte das möglich sein.
Persönliche Seite #5697487
Lesenswert?

silsi schrieb:
> Die einzige Möglichkeit C# auf dem RPi (ich nehm mal an da drauf läuft
> kein Windows) zum laufen zu bekommen wäre, es in ein Java-Bytecode zu
> kompilieren.

Einerseits gibt es eine Windows-Variante, die auf dem RPi läuft (Windows 
10 IoT Core), andererseits gibt es die .Net-Laufzeitumgebung auch für 
Linux, sie heißt dort Mono, und damit können C#-Programme wie auch 
andere Programme für .Net auf dem Pi verwendet werden.

(Willkürlich ausgesuchte Beschreibung:)

https://logicalgenetics.com/raspberry-pi-and-mono-hello-world/
#5697928
Lesenswert?

Sei dir bewusst dass, wenn du eine Programmiersprache beherscht, du 
ziemlich komfortabel andere lernen kannst.
Am nähesten an C# ist Java. Das läuft auch auf dem Raspi und sogar 
schneller als Python.
Falls du das Visual Studio magst, kannst du dir mal Visual Studio Code 
anschauen. Das kommt zwar nicht ganz an das sehr sauber gemachte Visual 
Studio für C# ran, aber ist nah dran und unterstützt dafür etliche 
Sprachen.
#5698157
Lesenswert?

Krajay K. schrieb:
> Nach einiger Recherche ob man bzw. wie man auf VisualStudio
> programmierte Anwendungen auf dem RPI zum Laufen bringt, kam ich auf
> keinen eindeutigen Pfad..

Klar. "VisualStudio" ist ja auch keine Programmiersprache.

> Ich möchte ein Programm mit c# schreiben, dass mithilfe eines
> Kameramoduls ein Foto schießt und per WLAN an einen PC weiterschickt..

C# ist eine Sackgasse, weil es das offiziell nur von Microsoft nur für 
Microsoft "Betriebssysteme" gibt. Es gibt zwar mit Mono eine Portierung 
auf Linux, aber alles was ich bisher von Mono gehört habe, läßt mich 
maximalen Abstand halten. So ist es zwar genauso fett und behäbig wie 
die .Net Umgebung auf Windows, es ist aber unvollständig (nicht alles, 
was mit .Net auf Windows funktioniert, funktioniert auch mit Mono) und 
buggy.

Angesichts deines anscheinend überschaubaren Kenntnisstandes habe ich 
große Zweifel, daß du mit Mono zum Ziel kommst.

> Was wäre hier die smarteste Lösung?

Eine Programmiersprache verwenden, die der RasPi direkt unterstützt. 
Sehr beliebt auf dem Pi ist Python. Aber du hast auch C, C++, Perl, 
Java, Tcl, Lua, Node.js und eine Tonne weiterer Sprachen zur Verfügung. 
Nur halt nichts, was mit "Visual" anfängt, das ist alles proprietärer 
Windows-only Krempel.

Alternativ: pack ein Windows auf deinen Pi.
#5698456
Lesenswert?

Alex G. schrieb:
> Naja, also Mono ist jedenfalls gut genug um Unity damit zu betreiben.

Da ist kein Widerspruch. Wenn man von Anfang an mit Mono programmiert, 
dann fallen einem die Inkompatibilitäten oder fehlenden Features im 
Vergleich zu .Net wahrscheinlich gar nicht auf. Als geübter 
Programmierer (der TE also eher nicht) kann man um Bugs notfalls herum 
programmieren.

Und daß Mono fett ist - ok, Java hat da die Latte weit nach oben gelegt. 
Für irgendwas müssen die 4 Kerne und das GB RAM des RasPi 2/3 ja auch 
genutzt werden.
Gast #5699215
Lesenswert?

Axel S. schrieb:
> C# ist eine Sackgasse, weil es das offiziell nur von Microsoft nur für
> Microsoft "Betriebssysteme" gibt.

Das war mal... Stimmt so schon lange nicht mehr...  .net core läuft auf 
Linux ohne mono und ohne zusätzlicher virtueller Maschine die mein 
"sicheres" Linux wieder gefährdet wie Java ?. Läuft quasi native und 
wesentlich Ressourcen sparender. Ist extra dafür OpenSource damit es 
nicht nur für MS-OS ist und wird speziell für C# angeboten. Aktuell noch 
mit Einschränkungen wie keine GUI, aber die braucht ein echter Linuxer 
nicht^^. Möglich wäre auch VS und C++ und wirklich native ohne .net core 
inkl nativen debuggen der Linux Anwendung unter Windows...
Der TE wollte VS und C#. Bin aber aktuell trotzdem auch der Meinung das 
dies keine ideale Lösung für Linux im speziellen für RPi ist, eher ein 
Notbehelf.
Gast #5700289
Lesenswert?

Rufus Τ. F. schrieb:
> Auch als "cross debugging", d.h. mit dem unter Windows laufendem VS und
> einem auf dem RPi laufenden Linux-Programm?

Jep, ein paar mehr Infos gibt es hier:
https://blogs.msdn.microsoft.com/vcblog/2017/04/11/linux-development-with-c-in-visual-studio/

Oder als "open folder project", ähnllich wie bei VSCode:
https://docs.microsoft.com/en-us/cpp/ide/non-msbuild-projects?view=vs-2017

Oder via CMake:
https://blogs.msdn.microsoft.com/vcblog/2018/11/26/using-visual-studio-for-cross-platform-c-development-targeting-windows-and-linux/

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren