Jump to content
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

- Página web oficial de Mono
- Manual de Mono
- La referencia API de Mono
- ECMA-334: Especificación del lenguaje C#
- ECMA-335: Common Language Infrastructure (CLI)
- Instrucciones para ejecutar aplicaciones Mono

Category:

- Frameworks (Español)

Hidden category:

- Pages with broken package links