¿Cómo obtienes C # en tu frambuesa pi?

16

Me gustaría comenzar a aprender C # y realmente quiero codificarlo en mi raspberry pi. Sin embargo, no puedo encontrar una manera de obtener C # en mi pi. ¿Alguien sabe como hacer esto? Tengo el Raspberry pi 2 modelo B. Gracias por tu ayuda.

John Quincy
fuente
Suponiendo que está utilizando alguna forma de Linux, hay un compilador de C # y tiempo de ejecución llamado mono : en.m.wikipedia.org/wiki/Mono_(software) Está disponible como un paquete de distribución.
Ricitos de oro

Respuestas:

11

'Mono' es un conjunto de herramientas y C # se utiliza para crear programas compatibles con ".NET" basados ​​en Linux, y los binarios resultantes son totalmente compatibles con Microsoft.NET.

comenzar desde los programas básicos dados en el enlace aquí, que definitivamente lo ayudarán a comprender mejor 'mono'.

Además también he utilizado la documentación de los desarrolladores mono este que era muy útil.

QWERTY
fuente
Para que esto funcione como una respuesta útil, ¿puede explicar la solución proporcionada en el enlace? Es decir, dar un resumen de la información y / o los siguientes pasos a seguir para que el OP no tenga que hacer clic en el enlace para averiguar de qué se trata su respuesta.
Phil B.
Los detalles en el enlace son suficientes para que el usuario comience desde lo básico. Pensé que el usuario solo necesita información para la pregunta que publicó. No tiene ningún sentido proporcionar nuevamente un resumen del enlace. ¡No entiendo el downvote por esto!
qwerty
2
Si bien esto puede responder teóricamente la pregunta, sería preferible incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia. Consulte aquí Proporcionar contexto para enlaces Se alientan los enlaces a recursos externos, pero agregue contexto alrededor del enlace para que sus usuarios tengan una idea de qué es y por qué está allí. Siempre cite la parte más relevante de un enlace importante, en caso de que no se pueda acceder al sitio de destino o se desconecte permanentemente.
Ghanima
1
@Ghanima Ahora eso tiene sentido. ¡Lo editaré de inmediato!
qwerty
1
Para que esta respuesta sea aún más útil, es mejor usarla, Jessieya que los paquetes Mono están MUCHO más actualizados. wheezy está realmente sin datos. También puede usar el repositorio de Xamarin para obtener un punto de inflexión o RC, si busca el más nuevo y más estable para cosas como servidores web, subprocesos y GUI
Piotr Kula
10

Creo que necesita aclarar lo que está tratando de lograr, pero espero que esto ayude.

En primer lugar, C # es un lenguaje. Escribes programas en C # y estos se ejecutarán en .NET Framework. Es el marco .NET que debe instalarse en su dispositivo para que se ejecute su programa C #.

Desde el año pasado, tiene la opción de instalar Windows 10 IoT Core en su Raspberry Pi 2. Esta es una tecnología nueva, por lo que se está desarrollando y mejorando activamente a un ritmo rápido, pero existen algunas limitaciones. Deberá utilizar Visual Studio (la versión "gratuita" de Community Edition está bien) y actualmente solo puede conectarse a un Pi2 desde una computadora con Windows 10. Si tiene estos, en mi humilde opinión, esta es la mejor manera de hacer que C # se ejecute.

Alternativamente, existe el Mono Project de código abierto que se ejecutará en Raspbian (y otros sabores).

Dependerá de sus habilidades actuales sobre cuál de estos enfoques será el mejor para usted.

Mark Cooper
fuente
Usar Visual Studio es excelente debido a la función de depuración que se habilita cuando se usa IoT. También hay extensiones para Visual Studio que le permiten depurar código C / C ++ en Raspbian (VisualGDB), ahora que es una extensión asesina que uso en mi IDE favorito :)
Piotr Kula
1
Windows 10 IoT Core parece estar ahora disponible en Raspberry Pi 3: developer.microsoft.com/en-us/windows/iot/getstarted/prototype/…
therobyouknow
2

Mono es un compilador de C # para Linux que puede descargar aquí . En cuanto a la compilación de línea de comandos, solo necesitará ejecutar mono yourscript.exesegún esta publicación de StackOverflow.

Patrick Cook
fuente
Mono es CLR (middleware) que traduce .NET a Linux.
Piotr Kula
2

Las respuestas que hacen referencia a Mono son en gran medida correctas, pero recomendaría como alternativa revisar .NET Core en su lugar. .NET Core admite Raspbian como destino de implementación. Para obtener información más detallada, consulte la entrada del blog en https://blogs.msdn.microsoft.com/david/2017/07/20/setting_up_raspian_and_dotnet_core_2_0_on_a_raspberry_pi/ , pero para fragmentar la parte de "cómo configurarlo", puede obténgalo haciendo lo siguiente:

  • Ejecute sudo apt-get install curl libunwind8 gettext. Esto usará el administrador de paquetes apt-get para instalar tres paquetes prerrequisitos.
  • Ejecute curl -sSL -o dotnet.tar.gz https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-linux-arm.tar.gz  para descargar el último .NET Core Runtime para ARM32. Esto se conoce como armhf en la página Daily Builds.
  • Ejecute sudo mkdir -p / opt / dotnet && sudo tar zxf dotnet.tar.gz -C / opt / dotnet para crear una carpeta de destino y extraer el paquete descargado.
  • Ejecute sudo ln -s / opt / dotnet / dotnet / usr / local / bin` para configurar un enlace simbólico ... un acceso directo para usted, amigos de Windows 😉, al ejecutable dotnet.
  • Pruebe la instalación escribiendo dotnet --help.

Puede usar cualquier editor de texto para editar los programas de C # y he oído que VSCode se instalará, pero aún no he tenido éxito en hacerlo funcionar.

Kyle Burns
fuente
Justo lo que estaba buscando ...
Chris Catignani
1

Instale la carcasa afilada C

$ sudo apt-get install mono-csharp-shell

Instale MonoDevelop, que es un IDE para ayudar a ejecutar C # en Pi

$ sudo apt-get install mono-runtime
$ sudo apt-get install mono-complete
$ sudo apt-get install monodevelop
marca
fuente