Instalación de .NET en macOS
En este artículo se explica qué versiones de .NET son compatibles con macOS, cómo instalar .NET y cuál es la diferencia entre el SDK y el entorno de ejecución.
La versión más reciente de .NET es la 8.
Versiones compatibles
En la tabla siguiente se enumeran las versiones de .NET compatibles y en qué macOS son compatibles. Estas versiones siguen siendo compatibles hasta que la versión de .NET llegue al final del soporte técnico o que la versión de macOS ya no sea compatible.
Versión de macOS | .NET |
---|---|
macOS 15 "Sequoia" | 8.0, 6.0 |
macOS 14 "Sonoma" | 8.0, 6.0 |
macOS 13 "Ventura" | 8.0, 6.0 |
Las versiones siguientes de .NET ya ❌ no se admiten:
- .NET 7
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Entorno de ejecución o SDK
El entorno de ejecución se usa para ejecutar aplicaciones creadas con .NET. Cuando un autor publica una aplicación, puede incluir el entorno de ejecución. Si no lo hace, el usuario elige si quiere instalar el entorno de ejecución correcto.
Hay dos entornos de ejecución que puede instalar en macOS y ambos se incluyen con el SDK.
ASP.NET Core Runtime
Ejecuta aplicaciones de ASP.NET Core. Incluye el entorno de ejecución de .NET. No está disponible como instalador.Runtime de .NET
Esto ejecuta aplicaciones .NET normales, pero no aplicaciones especializadas, como las aplicaciones compiladas en ASP.NET Core.
El SDK se usa para compilar y publicar aplicaciones y bibliotecas de .NET. El SDK más reciente admite la compilación de aplicaciones para versiones anteriores de .NET. En circunstancias normales, solo necesitaría tener instalado el último SDK.
La instalación del SDK incluye tanto el entorno de ejecución estándar de .NET como el entorno de ejecución ASP.NET Core. Por ejemplo, si tiene instalado .NET SDK 8.0, entonces estarán instalados .NET Runtime 8.0 y ASP.NET Core 8.0 Runtime. Sin embargo, cualquier otra versión del entorno de ejecución no se instalaría con el SDK y sería necesario instalarla por separado.
Cómo elegir la instalación de .NET
Hay diferentes maneras de instalar .NET y algunos productos pueden administrar su propia versión de .NET. Si instala .NET a través de un software que administra su propia versión de .NET, es posible que no esté habilitado en todo el sistema. Asegúrese de comprender las implicaciones de instalar .NET a través de otro software.
Si no está seguro de qué método debe elegir después de revisar las listas de las secciones siguientes, es probable que desee utilizar el paquete .NET Installer.
Desarrolladores
Visual Studio Code: kit de desarrollo de C#
Instale la extensión kit de desarrollo de C# para Visual Studio Code para desarrollar aplicaciones .NET. La extensión puede usar un SDK ya instalado o instalar uno automáticamente.
Usuarios y desarrolladores
-
Use el instalador independiente para instalar .NET. Este método es la manera típica de instalar .NET en el equipo de desarrollador o usuario.
-
Un script bash que puede automatizar la instalación del SDK o el entorno de ejecución. Puede elegir la versión de .NET que se va a instalar.
-
Use este método de instalación cuando necesite instalar .NET en una carpeta específica y ejecútelo aparte de otras copias de .NET.
Instalación de .NET
Existen paquetes de instalador para macOS, una forma sencilla de instalar .NET.
Abra un explorador y vaya a https://dotnet.microsoft.com/download/dotnet.
Seleccione el vínculo a la versión de .NET que desea instalar, como .NET 8.0.
Este vínculo le dirige a la página con vínculos para descargar esa versión de .NET.
Si va a instalar el SDK, elija la versión de .NET más reciente. El SDK admite la compilación de aplicaciones para versiones anteriores de .NET.
Sugerencia
Si no está seguro de qué versión descargar, elija la versión marcada como más reciente.
En esta página se presentan los vínculos de descarga para el SDK y el entorno de ejecución. Aquí puede descargar el SDK de .NET o el entorno de ejecución de .NET.
Hay dos secciones resaltadas en la imagen anterior. Si va a descargar el SDK, consulte la sección 1. Para el entorno de ejecución de .NET, consulte la sección 2.
Sección 1 (SDK)
Esta sección es el área de descarga del SDK. En la columna Instaladores de la fila macOS, se muestran dos arquitecturas: Arm64 y x64.
- Si ejecuta un procesador de Apple, como M1 o M3 Pro, seleccione Arm64.
- Si utiliza un procesador Intel, seleccione x64.
Sección 2 (Entorno de ejecución)
Esta sección contiene las descargas del entorno de ejecución. Observe que los vínculos de la columna Instaladores de la fila macOS están vacíos. Esta sección está vacía porque el Entorno de ejecución de ASP.NET Core solo se proporciona en el SDK o a través de la instalación binaria.
Desplácese más abajo para encontrar el Entorno de ejecución de .NET estándar para descargarlo.
- Si ejecuta un procesador de Apple, como M1 o M3 Pro, seleccione Arm64.
- Si utiliza un procesador Intel, seleccione x64.
Una vez finalizada la descarga, ábrala.
Siga los pasos que se describen en el Instalador.
Instalar .NET manualmente
Como alternativa a los instaladores de macOS, puede descargar e instalar manualmente el SDK y el entorno de ejecución. La instalación manual se suele llevar a cabo durante la automatización en una situación de integración continua. Normalmente, los desarrolladores y los usuarios quieren usar el instalador.
Sugerencia
Use el script install-dotnet.sh para realizar estos pasos automáticamente.
Abra un explorador y vaya a https://dotnet.microsoft.com/download/dotnet.
Seleccione el vínculo a la versión de .NET que desea instalar, como .NET 8.0.
Este vínculo le dirige a la página con vínculos para descargar esa versión de .NET.
Si va a instalar el SDK, elija la versión de .NET más reciente. El SDK admite la compilación de aplicaciones para versiones anteriores de .NET.
Sugerencia
Si no está seguro de qué versión descargar, elija la versión marcada como más reciente.
Seleccione el vínculo al SDK o al entorno de ejecución que desee instalar. Busque la columna Binarios de la fila macOS.
- Si ejecuta un procesador de Apple, como M1 o M3 Pro, seleccione Arm64.
- Si utiliza un procesador Intel, seleccione x64.
Abra un terminal y navegue hasta el lugar donde se descargó el archivo binario .NET.
Extraiga el archivo tarball en el lugar del sistema donde desee instalar .NET. En el ejemplo siguiente se usa el directorio HOME
~/Applications/.dotnet
.mkdir -p ~/Applications/.dotnet tar -xf "dotnet-sdk-9.0.100-rc.2.24474.11-osx-arm64.tar" -C ~/Applications/.dotnet/
Compruebe que .NET funcione cambiando el directorio donde se instaló .NET y ejecute el comando dotnet --info
:
chdir ~/Applications/.dotnet/
./dotnet --info
Instalar .NET con un script
Los scripts dotnet-install se usan para la automatización y las instalaciones no elevadas del entorno de ejecución. Puede descargar el script de https://dot.net/v1/dotnet-install.sh.
El valor predeterminado del script es instalar la versión más reciente de soporte técnico a largo plazo (LTS), que actualmente es .NET 8. Puede elegir una versión concreta especificando el modificador channel
. Incluya el modificador runtime
para instalar un entorno de ejecución. De lo contrario, el script instala el SDK.
Sugerencia
Estos comandos se proporcionan en un fragmento de código de script al final de este procedimiento.
Abre un terminal.
Vaya a una carpeta donde quiera descargar el script, por ejemplo ~/Descargas.
Si no tiene el comando
wget
, instálelo con Brewbrew install wget
Ejecute el comando siguiente para descargar el script.
wget https://dot.net/v1/dotnet-install.sh
Conceda permisos de ejecución al script.
chmod +x dotnet-install.sh
Ejecute el script para instalar .NET.
El script tiene como valor predeterminado instalar el SDK más reciente en el directorio
~/.dotnet
../dotnet-install.sh
Aquí están todos los comandos como un único script bash:
chdir ~/Downloads
brew install wget
wget https://dot.net/v1/dotnet-install.sh
chmod +x dotnet-install.sh
./dotnet-install.sh
Para probar .NET, vaya a la carpeta ~/.dotnet
y ejecute el comando dotnet --info
:
chdir ~/.dotnet
./dotnet --info
Importante
Algunos programas pueden usar variables de entorno para buscar .NET en el sistema y es posible que el comando dotnet
no funcione al abrir un nuevo terminal. Para obtener ayuda para resolver este problema, consulte la sección Hacer que .NET esté disponible en todo el sistema.
Instalar .NET para Visual Studio Code
Visual Studio Code es un editor de código fuente ligero y eficaz que se ejecuta en el escritorio. Visual Studio Code puede usar el SDK que ya está instalado en el sistema. Además, la extensión del Kit de desarrollo de C# instalará .NET automáticamente si aún no está instalado.
Para obtener instrucciones sobre cómo instalar .NET a través de Visual Studio Code, consulte Introducción a C# en VS Code.
Autenticación bajo notario
El software creado para macOS que se distribuye con un ID de desarrollador debe estar certificado ante notario, incluidas las aplicaciones creadas con .NET.
Si ejecuta una aplicación sin estar certificada ante notario, verá una ventana de error similar a la imagen siguiente:
Para obtener más información sobre cómo afecta la certificación forzada a .NET (y a las aplicaciones de .NET), vea Trabajo con la certificación de macOS Catalina.
Validation
Después de descargar un instalador o una versión binaria, compruébelo para asegurarse de que el archivo no se ha modificado ni dañado. Puede verificar la suma de comprobación en el equipo y, a continuación, compararla con lo notificado en el sitio web de descarga.
Al descargar un archivo desde una página de descarga oficial, la suma de comprobación del archivo se muestra en un cuadro de texto. Seleccione el botón Copiar para copiar el valor de la suma de comprobación al Portapapeles.
Use el comando sha512sum
para imprimir la suma de comprobación del archivo que ha descargado. Por ejemplo, el siguiente comando notifica la suma de comprobación del archivo dotnet-sdk-8.0.100-linux-x64.tar.gz:
$ sha512sum dotnet-sdk-8.0.100-linux-x64.tar.gz
13905ea20191e70baeba50b0e9bbe5f752a7c34587878ee104744f9fb453bfe439994d38969722bdae7f60ee047d75dda8636f3ab62659450e9cd4024f38b2a5 dotnet-sdk-8.0.100-linux-x64.tar.gz
Compare la suma de comprobación con el valor proporcionado por el sitio de descarga.
Importante
Aunque se muestra un archivo linux en estos ejemplos, esta información se aplica igualmente a macOS.
Uso de un archivo de suma de comprobación para validar
Las notas de la versión de .NET contienen un vínculo a un archivo de suma de comprobación que puede usar para validar el archivo descargado. En los pasos siguientes se describe cómo descargar el archivo de suma de comprobación y validar un binario de instalación de .NET:
La página de notas de la versión de .NET 8 sobre GitHub en https://github.com/dotnet/core/tree/main/release-notes/8.0#releases contiene una sección denominada Versiones. La tabla de esa sección se vincula a las descargas y los archivos de suma de comprobación para cada versión de .NET 8:
Seleccione el vínculo de la versión de .NET que ha descargado.
En la sección anterior se usó el SDK de .NET 8.0.100, que se encuentra en la versión de .NET 8.0.0.
En la página de versión, puede ver la versión del runtime de .NET y del SDK de .NET y un vínculo al archivo de suma de comprobación:
Haga clic con el botón secundario en el vínculo Suma de comprobación y copie el vínculo en el Portapapeles.
Abre un terminal.
Use
curl -O {link}
para descargar el archivo de suma de comprobación.Reemplace el vínculo del siguiente comando por el vínculo que ha copiado.
curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt
Con el archivo de suma de comprobación y el archivo de versión de .NET descargado en el mismo directorio, use el comando
sha512sum -c {file} --ignore-missing
para validar el archivo descargado.Cuando se supera la validación, verá que el archivo se imprime con el estado Aceptado:
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: OK
Si ve el archivo marcado como Fallado, el archivo que descargó no es válido y no debe usarse.
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: FAILED sha512sum: WARNING: 1 computed checksum did NOT match sha512sum: 8.0.0-sha.txt: no file was verified
Solución de problemas
Las secciones siguientes están disponibles para ayudar a solucionar problemas:
- Equipos Mac basados en Arm
- System.Drawing.Common y libgdiplus
- Hacer que .NET esté disponible en todo el sistema
Hacer que .NET esté disponible en todo el sistema
A veces, las aplicaciones del sistema, incluido el terminal, necesitan saber dónde está instalado .NET. El paquete del instalador de macOS de .NET debe configurar automáticamente el sistema. Sin embargo, si ha usado el método de instalación manual o el script de instalación de .NET, debe agregar el directorio donde se ha instalado .NET a la variable PATH
.
Es posible que algunas aplicaciones busquen la variable DOTNET_ROOT
al intentar determinar dónde se está instalado .NET.
Hay muchos shells diferentes disponibles para MacOS y cada uno tiene un perfil diferente. Por ejemplo:
- Shell de Bash: ~/.profile, /etc/profile
- Shell de Korn: ~/.kshrc or .profile
- Shell de Z: ~/.zshrc or .zprofile
Establezca las dos variables de entorno siguientes en el perfil de shell:
DOTNET_ROOT
Esta variable se establece en la carpeta en la que se instaló .NET, como
$HOME/.dotnet
:export DOTNET_ROOT=$HOME/.dotnet
PATH
Esta variable debe incluir la carpeta
DOTNET_ROOT
y la carpetaDOTNET_ROOT/tools
:export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
Equipos Mac basados en Arm
En las secciones siguientes se describen los aspectos que debe tener en cuenta al instalar .NET en un equipo Mac basado en Arm.
Versiones de .NET
En la tabla siguiente se describen las versiones de .NET que se admiten en un equipo Mac basado en Arm:
Versión de .NET | SDK | Tiempo de ejecución | Conflicto de ruta de acceso |
---|---|---|---|
8 | Sí | Sí | No |
8 | Sí | Sí | No |
6 | Sí | Sí | No |
6 | Sí | Sí | No |
Las versiones x64 y Arm64 del SDK de .NET existen de forma independiente entre sí. Si se lanza una nueva versión, cada instalación debe actualizarse.
Diferencias de ruta de acceso
En un equipo Mac basado en Arm, todas las versiones Arm64 de .NET están instaladas en la carpeta /usr/local/share/dotnet/ habitual. Sin embargo, al instalar la versión x64 del SDK de .NET, se instala en la carpeta /usr/local/share/dotnet/x64/dotnet/.
Conflictos de ruta de acceso
El SDK de .NET para x64 se instala en su propio directorio, como se describe en la sección anterior. De esta forma, las versiones Arm64 y x64 del SDK de .NET existen en la misma máquina. Sin embargo, los SDK para x64 anteriores a .NET 6 no se admiten y se instalan en la misma ubicación que la versión Arm64, en la carpeta /usr/local/share/dotnet/. Si quiere instalar un SDK para x64 no admitido, primero debe desinstalar la versión Arm64. Lo contrario también es cierto: debe desinstalar el SDK para x64 no admitido para instalar la versión Arm64.
Variables de ruta de acceso
Es posible que sea necesario cambiar las variables de entorno que agregan .NET a la ruta de acceso del sistema, como la variable PATH
, si tiene instaladas las versiones x64 y Arm64 del SDK de .NET 6. Además, algunas herramientas se basan en la variable de entorno DOTNET_ROOT
, que también tendría que actualizarse para que apunte a la carpeta de instalación del SDK de .NET 6 adecuada.
System.Drawing.Common y libgdiplus
Las aplicaciones .NET que usan el ensamblado System.Drawing.Common
necesitan que libgdiplus
esté instalado.
Una manera fácil de obtener libgdiplus
es usar el administrador de paquetes Homebrew ("brew") para macOS. Después de instalar brew, instale libgdiplus
ejecutando los siguientes comandos en el terminal:
brew update
brew install mono-libgdiplus