.NET installeren in macOS
In dit artikel leert u welke versies van .NET worden ondersteund in macOS, hoe u .NET installeert en wat het verschil is tussen de SDK en runtime.
De nieuwste versie van .NET is 8.
Ondersteunde versies
De volgende tabel bevat de ondersteunde .NET-releases en op welke macOS ze worden ondersteund. Deze versies blijven ondersteund totdat de versie van .NET het einde van de ondersteuning bereikt of de versie van macOS niet meer wordt ondersteund.
macOS-versie | .NET |
---|---|
macOS 15 "Sequoia" | 8.0, 6.0 |
macOS 14 'Sonoma' | 8.0, 6.0 |
macOS 13 "Ventura" | 8.0, 6.0 |
De volgende versies van .NET worden ❌ niet meer ondersteund:
- .NET 7
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Runtime of SDK
De runtime wordt gebruikt om apps uit te voeren die zijn gemaakt met .NET. Wanneer een auteur van een app een app publiceert, kan deze de runtime met de app opnemen. Als ze de runtime niet bevatten, is het aan de gebruiker om de juiste runtime te installeren.
Er zijn twee runtimes die u kunt installeren in macOS en beide zijn opgenomen in de SDK.
ASP.NET Core Runtime
Voert ASP.NET Core-apps uit. Bevat de .NET-runtime. Niet beschikbaar als installatieprogramma..NET Runtime
Hiermee worden normale .NET-apps uitgevoerd, maar geen gespecialiseerde apps, zoals apps die zijn gebouwd op ASP.NET Core.
De SDK wordt gebruikt voor het bouwen en publiceren van .NET-apps en -bibliotheken. De nieuwste SDK biedt ondersteuning voor het bouwen van apps voor eerdere versies van .NET. In normale omstandigheden hebt u alleen de nieuwste SDK nodig.
Het installeren van de SDK omvat zowel de standaard .NET Runtime als de ASP.NET Core Runtime. Als u bijvoorbeeld .NET SDK 8.0 hebt geïnstalleerd, worden .NET Runtime 8.0 en ASP.NET Core 8.0 Runtime beide geïnstalleerd. Elke andere runtimeversie zou echter niet worden geïnstalleerd met de SDK en vereist dat u deze afzonderlijk installeert.
Kiezen hoe u .NET installeert
Er zijn verschillende manieren om .NET te installeren en sommige producten kunnen hun eigen versie van .NET beheren. Als u .NET installeert via software die een eigen versie van .NET beheert, is het mogelijk niet mogelijk dat het systeembreed wordt ingeschakeld. Zorg ervoor dat u begrijpt wat de gevolgen zijn van het installeren van .NET via andere software.
Als u niet zeker weet welke methode u moet kiezen nadat u de lijsten in de volgende secties hebt bekeken, wilt u waarschijnlijk het .NET Installer-pakket gebruiken.
Ontwikkelaars
Visual Studio Code - C# Dev Kit
Installeer de C# Dev Kit-extensie voor Visual Studio Code om .NET-apps te ontwikkelen. De extensie kan een al geïnstalleerde SDK gebruiken of er een voor u installeren.
Gebruikers en ontwikkelaars
-
Gebruik het zelfstandige installatieprogramma om .NET te installeren. Deze methode is de gebruikelijke manier om .NET te installeren op uw ontwikkel- of gebruikerscomputer.
.NET installeren met een script
Een bash-script waarmee de installatie van de SDK of Runtime kan worden geautomatiseerd. U kunt kiezen welke versie van .NET u wilt installeren.
-
Gebruik deze installatiemethode wanneer u .NET moet installeren in een specifieke map en deze moet uitvoeren, afgezien van andere kopieën van .NET.
.NET installeren
Installatiepakketten zijn beschikbaar voor macOS, een eenvoudige manier om .NET te installeren.
Open een browser en ga naar https://dotnet.microsoft.com/download/dotnet.
Selecteer de koppeling naar de .NET-versie die u wilt installeren, zoals .NET 8.0.
Deze koppeling brengt u naar de pagina met koppelingen om die versie van .NET te downloaden
Als u de SDK gaat installeren, kiest u de nieuwste .NET-versie. De SDK ondersteunt het bouwen van apps voor eerdere versies van .NET.
Tip
Als u niet zeker weet welke versie u wilt downloaden, kiest u de versie die als meest recent is gemarkeerd.
Deze pagina bevat de downloadkoppelingen voor de SDK en runtime. Hier downloadt u de .NET SDK of .NET Runtime.
Er zijn twee secties gemarkeerd in de vorige afbeelding. Als u de SDK downloadt, raadpleegt u sectie 1. Raadpleeg sectie 2 voor .NET Runtime.
Sectie 1 (SDK)
Deze sectie is het sdk-downloadgebied. Onder de kolom Installers voor de macOS-rij worden twee architecturen weergegeven: Arm64 en x64.
- Als u een Apple-processor gebruikt, zoals een M1 of een M3 Pro, selecteert u Arm64.
- Als u een Intel-processor gebruikt, selecteert u x64.
Sectie 2 (runtime)
Deze sectie bevat de runtimedownloads. U ziet dat koppelingen voor de kolom Installers in de macOS-rij leeg zijn. Deze sectie is leeg omdat de ASP.NET Core Runtime alleen is opgegeven in de SDK of via binaire installatie.
Schuif verder omlaag om de standaard .NET Runtime te vinden voor downloaden.
- Als u een Apple-processor gebruikt, zoals een M1 of een M3 Pro, selecteert u Arm64.
- Als u een Intel-processor gebruikt, selecteert u x64.
Zodra het downloaden is voltooid, opent u het.
Volg de stappen in het installatieprogramma.
.NET handmatig installeren
Als alternatief voor de macOS-installatieprogramma's kunt u de SDK en runtime downloaden en handmatig installeren. Handmatige installatie wordt meestal uitgevoerd als onderdeelautomatisering in een scenario voor continue integratie. Ontwikkelaars en gebruikers willen meestal het installatieprogramma gebruiken.
Tip
Gebruik het install-dotnet.sh script om deze stappen automatisch uit te voeren.
Open een browser en ga naar https://dotnet.microsoft.com/download/dotnet.
Selecteer de koppeling naar de .NET-versie die u wilt installeren, zoals .NET 8.0.
Deze koppeling brengt u naar de pagina met koppelingen om die versie van .NET te downloaden
Als u de SDK gaat installeren, kiest u de nieuwste .NET-versie. De SDK ondersteunt het bouwen van apps voor eerdere versies van .NET.
Tip
Als u niet zeker weet welke versie u wilt downloaden, kiest u de versie die als meest recent is gemarkeerd.
Selecteer de koppeling naar de SDK of Runtime die u wilt installeren. Zoek de kolom Binaire bestanden in de rij macOS .
- Als u een Apple-processor gebruikt, zoals een M1 of een M3 Pro, selecteert u Arm64.
- Als u een Intel-processor gebruikt, selecteert u x64.
Open een terminal en navigeer naar de locatie waar het binaire .NET-bestand is gedownload.
Pak de tarball uit naar waar u .NET op uw systeem wilt. In het volgende voorbeeld wordt de basismap
~/Applications/.dotnet
gebruikt.mkdir -p ~/Applications/.dotnet tar -xf "dotnet-sdk-9.0.100-rc.2.24474.11-osx-arm64.tar" -C ~/Applications/.dotnet/
Test of .NET werkt door de map te wijzigen in waar .NET is geïnstalleerd en voer de dotnet --info
opdracht uit:
chdir ~/Applications/.dotnet/
./dotnet --info
.NET installeren met een script
De dotnet-install-scripts worden gebruikt voor automatisering en niet-geëleveerde installaties van de runtime. U kunt het script downloaden van https://dot.net/v1/dotnet-install.sh.
Het script is standaard ingesteld op het installeren van de nieuwste LTS-versie (Long Term Support), die .NET 8 is. U kunt een specifieke release kiezen door de channel
switch op te geven. Neem de runtime
switch op om een runtime te installeren. Anders installeert het script de SDK.
Tip
Deze opdrachten worden aan het einde van deze procedure voorzien van een scriptfragment.
Open een terminal.
Navigeer naar een map waarin u het script wilt downloaden, zoals ~/Downloads.
Als u de opdracht niet hebt, installeert u deze
wget
met Brewbrew install wget
Voer de volgende opdracht uit om het script te downloaden:
wget https://dot.net/v1/dotnet-install.sh
Geef het script uitvoermachtigingen
chmod +x dotnet-install.sh
Voer het script uit om .NET te installeren.
Het script is standaard ingesteld op het installeren van de nieuwste SDK in de
~/.dotnet
map../dotnet-install.sh
Hier volgen alle opdrachten als één bash-script:
chdir ~/Downloads
brew install wget
wget https://dot.net/v1/dotnet-install.sh
chmod +x dotnet-install.sh
./dotnet-install.sh
Test .NET door naar de ~/.dotnet
map te navigeren en de dotnet --info
opdracht uit te voeren:
chdir ~/.dotnet
./dotnet --info
Belangrijk
Sommige programma's kunnen omgevingsvariabelen gebruiken om .NET op uw systeem te vinden en het gebruik van de opdracht werkt mogelijk niet bij het dotnet
openen van een nieuwe terminal. Zie de sectie .NET beschikbaar maken voor het hele systeem voor hulp bij het oplossen van dit probleem.
.NET voor Visual Studio Code installeren
Visual Studio Code is een krachtige en lichtgewicht broncode-editor die op uw bureaublad wordt uitgevoerd. Visual Studio Code kan gebruikmaken van de SDK die al op uw systeem is geïnstalleerd. Daarnaast installeert de C# Dev Kit-extensie .NET voor u als deze nog niet is geïnstalleerd.
Zie Aan de slag met C# in VS Code voor instructies over het installeren van .NET via Visual Studio Code.
Notarisatie
Software die is gemaakt voor macOS die wordt gedistribueerd met een ontwikkelaars-id, moet worden geïnitialiseerd, inclusief apps die zijn gemaakt met .NET.
Als u een niet-ge notariseerde app uitvoert, wordt er een foutvenster weergegeven dat lijkt op de volgende afbeelding:
Zie Werken met macOS Catalina Notarization voor meer informatie over hoe afgedwongen notarisatie van invloed is op .NET (en uw .NET-apps).
Validatie
Nadat u een installatieprogramma of binaire versie hebt gedownload, controleert u of het bestand niet is gewijzigd of beschadigd. U kunt de controlesom op uw computer controleren en deze vergelijken met wat er is gerapporteerd op de downloadwebsite.
Wanneer u het bestand downloadt vanaf een officiële downloadpagina, wordt de controlesom voor het bestand weergegeven in een tekstvak. Selecteer de knop Kopiëren om de waarde van de controlesom naar het Klembord te kopiëren.
Gebruik de sha512sum
opdracht om de controlesom af te drukken van het bestand dat u hebt gedownload. Met de volgende opdracht wordt bijvoorbeeld de controlesom van het dotnet-sdk-8.0.100-linux-x64.tar.gz-bestand gerapporteerd:
$ sha512sum dotnet-sdk-8.0.100-linux-x64.tar.gz
13905ea20191e70baeba50b0e9bbe5f752a7c34587878ee104744f9fb453bfe439994d38969722bdae7f60ee047d75dda8636f3ab62659450e9cd4024f38b2a5 dotnet-sdk-8.0.100-linux-x64.tar.gz
Vergelijk de controlesom met de waarde van de downloadsite.
Belangrijk
Hoewel in deze voorbeelden een Linux-bestand wordt weergegeven, is deze informatie ook van toepassing op macOS.
Een controlesombestand gebruiken om te valideren
De .NET-releaseopmerkingen bevatten een koppeling naar een controlesombestand dat u kunt gebruiken om het gedownloade bestand te valideren. In de volgende stappen wordt beschreven hoe u het controlesombestand downloadt en een binaire .NET-installatie valideert:
De releaseopmerkingenpagina voor .NET 8 op GitHub bevat https://github.com/dotnet/core/tree/main/release-notes/8.0#releases een sectie met de naam Releases. De tabel in die sectie is gekoppeld aan de downloads en controlesombestanden voor elke .NET 8-release:
Selecteer de koppeling voor de versie van .NET die u hebt gedownload.
In de vorige sectie is .NET SDK 8.0.100 gebruikt. Deze bevindt zich in de .NET 8.0.0-release.
Op de releasepagina ziet u de .NET Runtime- en .NET SDK-versie en een koppeling naar het controlesombestand:
Klik met de rechtermuisknop op de koppeling Controlesom en kopieer de koppeling naar het klembord.
Open een terminal.
Gebruik
curl -O {link}
dit bestand om het controlesombestand te downloaden.Vervang de koppeling in de volgende opdracht door de koppeling die u hebt gekopieerd.
curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt
Wanneer zowel het checksum-bestand als het .NET-releasebestand naar dezelfde map zijn gedownload, gebruikt u de
sha512sum -c {file} --ignore-missing
opdracht om het gedownloade bestand te valideren.Wanneer de validatie is geslaagd, ziet u dat het bestand wordt afgedrukt met de status OK :
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: OK
Als u het bestand ziet dat is gemarkeerd als MISLUKT, is het bestand dat u hebt gedownload, niet geldig en mag het niet worden gebruikt.
$ 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
Probleemoplossing
De volgende secties zijn beschikbaar voor hulp bij het oplossen van problemen:
- Op arm gebaseerde Macs
- System.Drawing.Common en opgedeelde
- .NET beschikbaar maken voor het hele systeem
.NET beschikbaar maken voor het hele systeem
Soms moeten apps op uw systeem, inclusief de terminal, vinden waar .NET is geïnstalleerd. Het .NET macOS Installer-pakket moet uw systeem automatisch configureren. Als u echter de handmatige installatiemethode of het .NET-installatiescript hebt gebruikt, moet u de map toevoegen waarin .NET is geïnstalleerd aan de PATH
variabele.
Sommige apps zoeken mogelijk naar de DOTNET_ROOT
variabele bij het bepalen waar .NET is geïnstalleerd.
Er zijn veel verschillende shells beschikbaar voor macOS en elk heeft een ander profiel. Voorbeeld:
- Bash Shell: ~/.profile, /etc/profile
- Korn Shell: ~/.kshrc of .profile
- Z Shell: ~/.zshrc of .zprofile
Stel de volgende twee omgevingsvariabelen in uw shell-profiel in:
DOTNET_ROOT
Deze variabele is ingesteld op de map .NET is geïnstalleerd op, zoals
$HOME/.dotnet
:export DOTNET_ROOT=$HOME/.dotnet
PATH
Deze variabele moet zowel de
DOTNET_ROOT
map als deDOTNET_ROOT/tools
map bevatten:export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
Op arm gebaseerde Macs
In de volgende secties worden de zaken beschreven die u moet overwegen bij het installeren van .NET op een Mac op basis van Arm.
.NET-versies
In de volgende tabel wordt beschreven welke versies van .NET worden ondersteund op een Op Arm gebaseerde Mac:
.NET-versie | SDK | Runtime | Padconflict |
---|---|---|---|
8 | Ja | Ja | Nr. |
8 | Ja | Ja | Nr. |
6 | Ja | Ja | Nr. |
6 | Ja | Ja | Nr. |
De x64- en Arm64-versies van de .NET SDK bestaan onafhankelijk van elkaar. Als er een nieuwe versie wordt uitgebracht, moet elke installatie worden bijgewerkt.
Verschillen in pad
Op een Op Arm gebaseerde Mac worden alle Arm64-versies van .NET geïnstalleerd in de normale map /usr/local/share/dotnet/ . Wanneer u echter de x64-versie van .NET SDK installeert, wordt deze geïnstalleerd in de map /usr/local/share/dotnet/x64/dotnet/ .
Padconflicten
De x64 .NET SDK wordt geïnstalleerd in een eigen map, zoals beschreven in de vorige sectie. Hierdoor kunnen de Arm64- en x64-versies van de .NET SDK op dezelfde computer bestaan. Elke x64 SDK vóór .NET 6 wordt echter niet ondersteund en wordt geïnstalleerd op dezelfde locatie als de Arm64-versie, de map /usr/local/share/dotnet/ . Als u een niet-ondersteunde x64 SDK wilt installeren, moet u eerst de Arm64-versie verwijderen. Het tegenovergestelde is ook waar. U moet de niet-ondersteunde x64-SDK verwijderen om de Arm64-versie te installeren.
Padvariabelen
Omgevingsvariabelen die .NET toevoegen aan het systeempad, zoals de PATH
variabele, moeten mogelijk worden gewijzigd als u zowel de x64- als Arm64-versies van de .NET 6 SDK hebt geïnstalleerd. Daarnaast zijn sommige hulpprogramma's afhankelijk van de DOTNET_ROOT
omgevingsvariabele, die ook moet worden bijgewerkt om te verwijzen naar de juiste .NET 6 SDK-installatiemap.
System.Drawing.Common en opgedeelde
.NET-toepassingen die gebruikmaken van de System.Drawing.Common
assembly moeten libgdiplus
worden geïnstalleerd.
Een eenvoudige manier om te verkrijgen libgdiplus
is door het Homebrew-pakketbeheer ('brew') voor macOS te gebruiken. Nadat u brew hebt geïnstalleerd, installeert libgdiplus
u deze door de volgende opdrachten uit te voeren in de terminal:
brew update
brew install mono-libgdiplus