Mono (Español)

From ArchWiki
Esta traducción de Mono fue revisada el 2019-02-09. Si existen cambios puede actualizarla o avisar al equipo de traducción.

De Wikipedia:

Mono es el nombre de un proyecto de código abierto iniciado por Ximian respaldado por Microsoft y actualmente impulsado por Novell (tras la adquisición de Ximian) para crear un grupo de herramientas libres, basadas en GNU/Linux y compatibles con .NET según lo especificado por el ECMA.

Instalación

Instale el paquete mono.

Si necesita soporte de VisualBasic.Net, debe instalar el intérprete de VisualBasic.Net con el paquete mono-basicAUR.

MonoDevelop recurre a xterm cuando ejecuta su proyecto. Podría instalarlo cuando esté escribiendo una aplicación de consola.

Nota: Al instalar el paquete, las autoridades de certificación se almacenan en /usr/share/.mono/certs/Trust/, pero el hecho de desinstalar el paquete no las elimina. [1]

Ejecutar aplicaciones Mono

Puede ejecutar los binarios de Mono recurriendo a mono manualmente:

$ mono nombredelprograma.exe

También puede ejecutar los binarios de Mono directamente, al igual que los binarios nativos:

$ chmod 755 archivoexe.exe
$ ./archivoexe.exe

Probar Mono

Cree un archivo nuevo:

test.cs
using System;

public class Test {
 public static void Main(string[] args) {
  Console.WriteLine("Hello World!");
 }
}

Después ejecute:

$ mcs test.cs
$ mono test.exe
Hello world!

Desarrollo

Empezar a desarrollar en Mono/C# es muy fácil. Solamente instale MonoDevelop IDE con el paquete monodevelop-stableAUR[enlace roto: package not found] o monodevelop-gitAUR[enlace roto: package not found]. Alternativamente, puede instalar el IDE riderAUR.

Si desea el navegador de documentación API y algunas herramientas de testeo y desarrollo, instale mono-tools.

Solución de problemas

Recibo un error "cannot execute "ruta/a/tu/binario" file name has not been set."

Puede instalar xterm, ya que MonoDevelop inicia xterm cuando presiona ejecutar. Esto podría ser una posible dependencia.

Recibo un error cuando intento ejecutar los binarios de Mono directamente: "cannot execute binary file"

El controlador binfmt_misc para Mono aún no se ha configurado, como se explica en detalle en la página web del proyecto Mono.

Para solucionar esto, reinicie el servicio systemd-binfmt.

Recibo un error de handshake TLS (o un error basado en un sistema de certificados similar)

Intente mozroots --import --ask-remove, el cual debería actualizar los certificados de mono. mozroots es parte del paquete mono.

Recibo un error al compilar F#: "System.TypeInitializationException: The type initializer for 'System.Console' threw an exception"

Este es un error reciente en mcs que se utiliza para compilar F#. Una solución es usar export TERM=xterm, tal y como se detalla aquí.

Véase también