Instalar o .NET no macOS

Neste artigo, você aprenderá a instalar o .NET no macOS. O .NET é composto pelo runtime e pelo SDK. O runtime é usado para executar um aplicativo .NET e pode ou não ser incluído com o aplicativo. O SDK é usado para criar bibliotecas e aplicativos .NET. O runtime do .NET é sempre instalado com o SDK.

A versão mais recente do .NET é a 7.

Versões com suporte

Há dois tipos de versões com suporte, versões LTS (Suporte de Longo Prazo) ou STS (Suporte com Prazo Padrão). A qualidade de todas as versões é a mesma. A única diferença é a duração do suporte. As versões LTS recebem suporte e patches gratuitos por 3 anos. As versões STS recebem suporte e patches gratuitos por 18 meses. Para obter mais informações, confira a Política de Suporte do .NET.

A tabela a seguir é uma lista atualizada de versões do .NET com suporte e as versões do macOS com suporte:

Sistema Operacional .NET 7 (STS) .NET 6 (LTS)
macOS 13.0 "Ventura" ✔️ 7.0 ✔️ 6.0
macOS 12.0 "Monterey" ✔️ 7.0 ✔️ 6.0
macOS 11.0 "Big Sur" ✔️ 7.0 ✔️ 6.0
macOS 10.15 "Catalina" ✔️ 7.0 ✔️ 6.0

Para obter uma lista completa de versões do .NET e seu ciclo de vida de suporte, consulte Política de Suporte do .NET.

Versões sem suporte

Não ❌ há mais suporte para as seguintes versões do .NET:

  • .NET 5
  • .NET Core 3.1
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Informações de runtime

O runtime é usado para executar aplicativos criados com .NET. Quando um autor de aplicativo publica um aplicativo, ele pode incluir o runtime com seu aplicativo. Se eles não incluírem o runtime, cabe ao usuário instalar o runtime.

Há dois runtimes diferentes que você pode instalar no macOS:

  • Runtime do ASP.NET Core
    Executa aplicativos ASP.NET Core. Inclui o runtime do .NET.

  • Runtime do .NET
    Esse runtime é o runtime mais simples e não inclui nenhum outro runtime. É altamente recomendável que você instale o ASP.NET Core runtime para obter a melhor compatibilidade com aplicativos .NET.

Informações do SDK

O SDK é usado para compilar e publicar aplicativos e bibliotecas .NET. A instalação do SDK inclui os dois runtimes: ASP.NET Core e .NET.

Autenticação

A partir do macOS Catalina (versão 10.15), todos os softwares criados após 1º de junho de 2019 e distribuídos com a ID do Desenvolvedor devem ser autenticados. Esse requisito se aplica ao runtime do .NET, ao SDK do .NET e ao software criado com o .NET.

Os instaladores do runtime e SDK do .NET são autenticados desde 18 de fevereiro de 2020. As versões anteriores lançadas não são autenticadas. Se você executar um aplicativo não autenticado, verá um erro semelhante à seguinte imagem:

Alerta de autenticação do macOS Catalina

Para saber mais sobre como a autenticação imposta afeta o .NET (e seus aplicativos .NET), confira Trabalhar com a autenticação do macOS Catalina.

libgdiplus

Os aplicativos .NET que usam o assembly System.Drawing.Common exigem que o libgdiplus seja instalado.

Uma maneira fácil de obter o libgdiplus é usando o gerenciador de pacotes Homebrew ("brew") para macOS. Depois de instalar o brew, instale o libgdiplus executando os seguintes comandos em um prompt (de comando) do Terminal:

brew update
brew install mono-libgdiplus

Instalar com um instalador

O macOS tem instaladores independentes que podem ser usados para instalar o .NET 7:

Baixar e instalar manualmente

Como alternativa aos instaladores do macOS para .NET, você pode baixar e instalar manualmente o SDK ou o runtime. A instalação manual costuma ser executada como parte do teste de integração contínua. Para um desenvolvedor ou usuário, geralmente é melhor usar um instalador.

Primeiro, baixe uma versão binária do SDK ou do runtime em um dos sites a seguir. Se você instalar o SDK do .NET, não será necessário instalar o runtime correspondente:

Em seguida, extraia o arquivo baixado e use o comando export para definir DOTNET_ROOT como o local da pasta extraída e verifique se o .NET está no CAMINHO. Isso deve disponibilizar os comandos da CLI do .NET no terminal. Para saber mais sobre as variáveis de ambiente do .NET, confira Variáveis de ambiente da CLI e do SDK do .NET.

Como alternativa, após baixar o binário do .NET, os comandos a seguir podem ser executados no diretório em que o arquivo está salvo para extrair o runtime. Isso também disponibilizará os comandos da CLI do .NET no terminal e definirá as variáveis de ambiente necessárias. Lembre-se de alterar o valor de DOTNET_FILE para o nome do binário baixado:

DOTNET_FILE=dotnet-sdk-7.0.100-osx-x64.tar.gz
export DOTNET_ROOT=$(pwd)/dotnet

mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"

export PATH=$PATH:$DOTNET_ROOT

Dica

Os comandos export anteriores tornam os comandos da CLI do .NET disponíveis somente na sessão do terminal em que foram executados.

Você pode editar seu perfil de shell para adicionar permanentemente os comandos. Há vários shells diferentes disponíveis para Linux, cada qual com um perfil distinto. Por exemplo:

  • Bash Shell: ~/.bash_profile, ~/.bashrc
  • Korn Shell: ~/.kshrc ou .profile
  • Z Shell: ~/.zshrc ou .zprofile

Edite o arquivo de origem apropriado para seu shell e adicione :$HOME/dotnet ao final da instrução PATH existente. Se nenhuma instrução PATH for incluída, adicione uma nova linha com export PATH=$PATH:$HOME/dotnet.

Além disso, adicione export DOTNET_ROOT=$HOME/dotnet ao final do arquivo.

Essa abordagem permite que você instale diferentes versões em locais distintos e escolha explicitamente qual delas usar em cada aplicativo.

Macs baseados em Arm

As seções a seguir descrevem as coisas que você deve considerar ao instalar o .NET em um Mac baseado em Arm.

O que tem suporte

A tabela a seguir descreve quais versões do .NET têm suporte em um Mac baseado em Arm:

Versão .NET Arquitetura . Runtime Conflito de caminhos
7 Arm64 Sim Sim Não
7 x64 Sim Sim Não
6 Arm64 Sim Sim Não
6 x64 Sim Sim Não

A partir do .NET 6, as versões x64 e Arm64 do SDK do .NET existem independentemente umas das outras. Se uma nova versão for lançada, cada instalação precisará ser atualizada.

Diferenças de caminho

Em um Mac baseado em Arm, todas as versões do Arm64 do .NET são instaladas na pasta normal /usr/local/share/dotnet/. No entanto, quando você instala a versão x64 do SDK do .NET 7, é instalada na pasta /usr/local/share/dotnet/x64/dotnet/.

Conflitos de caminho

A partir do .NET 6, a versão x64 do SDK do .NET é instalada em seu próprio diretório, conforme descrito na seção anterior. Assim, as versões Arm64 e x64 do SDK do .NET 6 podem existir no mesmo computador. No entanto, não há suporte a nenhum SDK x64 antes do .NET 6, e instalado no mesmo local da versão do Arm64, a pasta /usr/local/share/dotnet/. Se você quiser instalar um SDK x64 sem suporte, precisará primeiro desinstalar a versão do Arm64. O oposto também é verdadeiro, você precisará desinstalar o SDK x64 sem suporte para instalar a versão do Arm64.

Variáveis de caminho

Variáveis de ambiente que adicionam .NET ao caminho do sistema, como a variável PATH, podem precisar ser alteradas se você tiver as versões x64 e Arm64 do SDK do .NET 6 instaladas. Além disso, algumas ferramentas dependem da variável de ambiente DOTNET_ROOT, que também precisaria ser atualizada para apontar para a pasta de instalação apropriada do SDK do .NET 6.

Instalar com o Visual Studio para Mac

O Visual Studio para Mac instala o SDK do .NET quando a carga de trabalho do .NET é selecionada. Para começar a usar o desenvolvimento do .NET no macOS, confira Instalar o Visual Studio 2019 para Mac.

Versão do SDK do .NET Versão do Visual Studio
7.0 Visual Studio 2022 para Mac 17.4 ou posterior.
6,0 Versão prévia 3 17.0 ou superior do Visual Studio 2022 para Mac.
3.1 Visual Studio 2019 para Mac versão 8.4 ou superior.

macOS Visual Studio 2019 para Mac com a carga de trabalho .NET selecionada.

Instalar junto com o Visual Studio Code

Visual Studio Code é um editor de código-fonte leve e avançado que é executado em sua área de trabalho. Visual Studio Code está disponível para Windows, macOS e Linux.

Embora Visual Studio Code não venha com um instalador automatizado do .NET como o Visual Studio, adicionar suporte ao .NET é simples.

  1. Baixar e instalar o Visual Studio Code.
  2. Baixar e instalar o .NET SDK.
  3. Instalar a extensão C# do Visual Studio Code Marketplace.

Instalar com a automação bash

Os scripts dotnet-install são usados para automação e instalações não administrativas do runtime. Você pode baixar o script na página de referência de script dotnet-install.

O script usa como padrão a instalação da versão LTS (suporte de longo prazo) mais recente, que é o .NET 6. Você pode escolher uma versão específica definindo a opção channel . Inclua a opção runtime para instalar um runtime. Caso contrário, o script instala o SDK.

O comando anterior instala o runtime do ASP.NET Core para máxima compatibilidade. O runtime ASP.NET Core também inclui o runtime padrão do .NET.

./dotnet-install.sh --channel 7.0 --runtime aspnetcore

Docker

Os contêineres fornecem uma maneira leve de isolar seu aplicativo do restante do sistema host. Os contêineres no mesmo computador compartilham apenas o kernel e usam recursos fornecidos ao seu aplicativo.

O .NET pode ser executado em um contêiner do Docker. As imagens oficiais do Docker do .NET Core são publicadas no MCR (Registro de Contêiner da Microsoft) e podem ser encontradas no repositório do Docker Hub do .NET Core da Microsoft. Cada repositório contém imagens para diferentes combinações do .NET (SDK ou Runtime) e do sistema operacional que você pode usar.

A Microsoft fornece imagens personalizadas para cenários específicos. Por exemplo, o repositório do ASP.NET Core fornece imagens que são criadas para a execução de aplicativos ASP.NET Core na produção.

Para obter mais informações sobre como usar o .NET em um contêiner do Docker, confira Introdução ao .NET e docker e Exemplos.

Próximas etapas