Android y C#: compilar y ejecutar código de C sharp con Mono Project

Android y C# - Compilar hola mundo

Están llegando grandes cosas al mundo de Linux y sobre todo de Android. No sé la fecha exacta (seguramente han pasado años) pero C# ya está disponible para Linux con el proyecto Mono.

Ubuntu también está disponible para Android como lo vimos en otro post, así que basta con instalar los paquetes sobre Ubuntu y podremos programar en C# desde Android; sin sacrificar el rendimiento ni esas cosas.

Android y C# - Ejecutar hola mundo

Android y C# – Ejecutar hola mundo

Recuerda que si quieres instalar C# en Ubuntu (pero no en Android) puedes mirar este post.

Requisitos previos

Para compilar y ejecutar código de C# en Android es necesario tener Termux, y encima de Termux tener Ubuntu.

Mira cómo instalar y configurar Termux; y después el que indica cómo instalar Ubuntu sobre Android.

Por cierto, no se necesita ser root, con que puedas instalar Termux basta.

Instalar C# en Android con Mono project

Vamos a seguir casi las mismas instrucciones que se ven en el post de Ubuntu con C#, pero sin sudo.

Abrimos Termux e iniciamos Ubuntu.

Agregar repositorio de Mono

Instalamos gnupg y ca-certificates:

apt install gnupg ca-certificate -y

La opción -y es para evitar que nos pregunte sobre el espacio usado.

1 - Android y C# - Instalar gnupg y ca-certificates

1 – Android y C# – Instalar gnupg y ca-certificates

Dependiendo de la velocidad del internet y dispositivo el tiempo va a cambiar. Al final debe verse algo así:

2 - Terminar de instalar paquetes

2 – Terminar de instalar paquetes

Después de eso debemos agregar la clave:

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

Nos va a indicar que se ha importado una clave:

3 - Agregar clave para instalar mono en Android

3 – Agregar clave para instalar mono en Android

Más tarde agregamos la dirección del repositorio de Mono con:

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

Como se ve en la imagen:

4 - Agregar repositorio de Mono a Ubuntu

4 – Agregar repositorio de Mono a Ubuntu

Es momento de actualizar los repositorios con apt-update:

5 - Actualizar con apt update

5 – Actualizar con apt update

Terminando de actualizar:

6 - Terminando de actualizar

6 – Terminando de actualizar

Instalar mono-devel en Android

Ahora llegó el momento de instalar mono-devel con apt install mono-devel -y; de nuevo, la opción -y es para que no pida confirmación.

Te aviso de una vez que este proceso puede ser un poco tardado. Después de un tiempo, el instalador preguntará tu país.

Fíjate que escribí el número 2 (América); pero por el tamaño de la pantalla se encimaron algunas cosas.

7 - Instalando Mono, configurar país

7 – Instalando Mono, configurar país

Después preguntará tu zona horaria, en este caso es la 97, no se ve porque se bajó pero la opción 97 era para México:

8 - Seleccionar zona horaria

8 – Seleccionar zona horaria

Esperamos un momento y la instalación va a terminar.

Primer programa de C# en Android

Vamos a crear nuestro hola mundo para C# desde Android. No importa cómo lo hagas, siempre y cuando pongas en un archivo llamado hola.cs lo siguiente:

Yo lo hice con vim; lo instalé con apt install vim -y. Después escribí vim hola.cs; presioné la tecla I para entrar al modo inserción, escribí el código (también puedes pegarlo); terminé de editarlo, presioné ESC, luego escribí :wq y finalmente Enter para guardar y salir.

El compilador se llama mono-csc (Mono C sharp compiler) y el que ejecuta los programas se llama mono. Para compilar ejecutamos:

mono-csc hola.cs

Así como se aprecia en el siguiente gif:

Android y C# - Compilar hola mundo

Android y C# – Compilar hola mundo

Eso va a generar un archivo llamado hola.exe (sí, un exe en Linux) que vamos a ejecutar con mono hola.exe así como en la siguiente imagen:

Android y C# - Ejecutar hola mundo

Android y C# – Ejecutar hola mundo

¡Listo! hemos compilado y ejecutado código de C# en Android, y todo esto sin necesidad de acceso root.

Conclusión

Solo quiero recalcar que el compilador se llama mono-csc; pues compilar todo código de C# si quieres. Y para ejecutar un exe, usa mono.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *