C# (C Sharp)

Instalar C# (Mono Project) en Linux Ubuntu

C# y todas las utilidades del framework .NET ya pueden ser usadas por los usuarios de Linux que ejecutan Ubuntu, Debian, Raspbian, etcétera.

Para tener el compilador de C# en Linux Ubuntu hay que instalar el paquete Mono, y eso es justamente lo que hoy veremos.

También vamos a compilar nuestro primer programa de C# en Linux usando csc, y vamos a ejecutar el archivo exe con mono.

Este tutorial de instalación de Mono Project funciona en Ubuntu 14, 16 y 18. A lo largo de este post veremos cómo se instala en Ubuntu 16.04 pero proporcionaré guías para instalarlo en las otras versiones.

¿Quieres compilar C# en Windows sin instalar Visual Studio? este es tu post.

Agregar el repositorio de Mono en Linux Ubuntu

Dependiendo de nuestra versión vamos a agregar distintos repositorios. Tranquilo, que en esta página está la guía para cada versión:

1 – Agregar repositorio de Mono a Linux Ubuntu en cualquier versión

Si tu versión no es la 16 entonces entra a la página y escribe los comandos, o pégalos (hazlo uno a la vez).

Agregar repositorio a Ubuntu 16

Como en este caso será para Ubuntu 16 primero debemos escribir:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

2 – Importar clave (c# en Linux Ubuntu)

Eso agregará la clave. Ahora escribimos:

sudo apt install apt-transport-https ca-certificates

3 – Instalar paquetes de apt-transport-https

Eso es para instalar el paquete que permite acceder y descargar paquetes a través de HTTPS. El paquete de ca-certificates es para que se compruebe la autenticidad de las conexiones SSL.

Luego agregamos una dirección de repositorios:

echo "deb https://download.mono-project.com/repo/ubuntu stable-xenial main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list

4 – Agregar dirección de repositorio

Finalmente actualizamos los repositorios:

sudo apt-get update

5 – Actualizar lista de repositorios

Con eso ya podemos continuar a la instalación de Mono en Linux Ubuntu.

Instalar Mono en Ubuntu

Ya agregamos el repositorio, ahora simplemente vamos a instalar. Ahora no importa la versión de Ubuntu, pues solo cambia cuando se agrega el repositorio.

Para instalar mono-devel escribimos:

sudo apt install mono-devel -y

La opción -y es para que no nos pida confirmación al instalar.

6 – Instalar mono-devel en Linux Ubuntu (compilador de C#)

Hay que esperar un poco, todo depende de la potencia de la computadora. Al finalizar se debe ver algo como lo de la imagen:

7 – Instalación de mono en Linux Ubuntu finalizada

Con eso hemos terminado la instalación del compilador de C# (csc) en Linux Ubuntu. Vamos a probarlo.

Hola mundo en C# desde Linux Ubuntu con Mono

Ahora tenemos acceso a csc, el compilador de C# y a mono, el encargado de ejecutar el código compilado.

Para probar que el compilador realmente compila vamos a crear un archivo con extensión cs (c sharp) y lo vamos a compilar para más tarde ejecutarlo.

Puedes usar tu editor favorito, yo usaré vim. El contenido debe ser el siguiente:

using System;

class Principal {
  public static void Main (string[] args) {
    Console.WriteLine ("Programando en C# en Linux Ubuntu");
    Console.WriteLine ("Visita: parzibyte.me");
  }
}

Como usaré vim escribo:

vim ~/hola_mundo.cs

Dentro presiono la tecla I (letra I, o sea la letra i, o sea con la que se escribe “indiferencia”) para entrar al modo INSERT, pego el código, presiono ESC, luego :wq, Enter y listo.

La siguiente imagen comprueba que el archivo está dentro de ~:

8 – Comprobar contenido del archivo de Hola mundo en C# desde Linux Ubuntu

Para compilar cambiamos al directorio en donde está el archivo y ejecutamos:

csc hola_mundo.cs

Eso va a generar un archivo exe que es el ejecutable. Para ejecutarlo escribimos:

mono hola_mundo.exe

Nuestro programa en C# ahora debería ejecutarse sin problema.

9 – Compilar y ejecutar programa de C# en Linux Ubuntu con Mono

¡Felicidades! has ejecutado tu primer programa en C# desde Linux Ubuntu.

Otros paquetes aparte de mono-devel

Con los repositorios que agregamos podemos instalar otros paquetes del mismo entorno.  Para instalar simplemente ejecutamos:

sudo apt install paquete

Veamos lo que tenemos:

  • mono-complete: instalar todo, resuelve problemas como “assembly not found”
  • mono-dbg: el depurador de código
  • referenceassemblies-pcl: soportar compilación PCL, resuelve problemas como “Framework not installed: .NETPortable”
  • ca-certificates-mono: si hay problemas al hacer conexiones HTTPS hay que instalar este paquete
  • mono-xsp4: ejecutar aplicaciones de ASP.NET

Instala lo que requieras y ahora podrás tener ASP y C# con .NET en Linux Ubuntu.

Con eso concluimos; puedes ver este link para más tutoriales sobre C#.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Resetear GOOJPRT PT-210 MTP-II (Impresora térmica)

El día de hoy vamos a ver cómo restablecer la impresora térmica GOOJPRT PT-210 a…

2 semanas hace

Proxy Android para impresora térmica ESC POS

Hoy voy a enseñarte cómo imprimir en una impresora térmica conectada por USB a una…

2 semanas hace

Android – Servidor web con servicio en segundo plano

En este post voy a enseñarte a programar un servidor web en Android asegurándonos de…

2 semanas hace

Cancelar trabajo de impresión con C++

En este post te quiero compartir un código de C++ para listar y cancelar trabajos…

1 mes hace

Copiar bytes de Golang a JavaScript con WebAssembly

Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…

2 meses hace

Imprimir PDF con Ghostscript en Windows de manera programada

Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…

2 meses hace