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

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 días hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 días hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 días hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 días hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

2 días hace

Solución: Apache – Server unable to read htaccess file

Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…

3 días hace

Esta web usa cookies.