Installera .NET på macOS
I den här artikeln får du lära dig hur du installerar .NET på macOS. .NET består av körningen och SDK:et. Körningen används för att köra en .NET-app och kanske eller kanske inte ingår i appen. SDK används för att skapa .NET-appar och -bibliotek. .NET-CLR installeras alltid med SDK.
Den senaste versionen av .NET är 8.
Versioner som stöds
Det finns två typer av versioner som stöds: versioner av långsiktig support (LTS) och STS-versioner (Standard Term Support). Kvaliteten på alla utgåvor är densamma. Den enda skillnaden är supportens längd. LTS-versioner får kostnadsfri support och korrigeringar i tre år. STS-versioner får kostnadsfri support och korrigeringar i 18 månader. Mer information finns i .NET-supportprincip.
Följande tabell är en lista över .NET-versioner som stöds för närvarande och vilka versioner av macOS de stöds på:
Operativsystem | .NET 8 (LTS) | .NET 7 (STS) | .NET 6 (LTS) |
---|---|---|---|
macOS 14.0 "Sonoma" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 |
macOS 13.0 "Ventura" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 |
macOS 12.0 "Monterey" | ✔️ 8.0 | ✔️ 7.0 | ✔️ 6.0 |
macOS 11.0 "Big Sur" | ❌ | ✔️ 7.0 | ✔️ 6.0 |
macOS 10.15 "Catalina" | ❌ | ✔️ 7.0 | ✔️ 6.0 |
En fullständig lista över .NET-versioner och deras supportlivscykel finns i .NET Support Policy.
Versioner som inte stöds
Följande versioner av .NET stöds ❌ inte längre:
- .NET 5
- .NET Core 3.1
- .NET Core 3.0
- .NET Core 2.2
- .NET Core 2.1
- .NET Core 2.0
Körningsinformation
Körningen används för att köra appar som skapats med .NET. När en appförfattare publicerar en app kan de inkludera körningen med sin app. Om de inte inkluderar körningen är det upp till användaren att installera körningen.
Det finns två olika körningar som du kan installera på macOS:
ASP.NET Core-körning
Kör ASP.NET Core-appar. Innehåller .NET-körningen..NET-körning
Den här körningen är den enklaste körningen och inkluderar inte någon annan körning. Vi rekommenderar starkt att du installerar ASP.NET Core-körning för bästa kompatibilitet med .NET-appar.
SDK-information
SDK:et används för att skapa och publicera .NET-appar och -bibliotek. Installationen av SDK omfattar båda körningarna: ASP.NET Core och .NET.
Notarisering
Från och med macOS Catalina (version 10.15) måste all programvara som skapats efter den 1 juni 2019 som distribueras med utvecklar-ID vara notariserad. Det här kravet gäller för .NET-runtime, .NET SDK och programvara som skapats med .NET.
Installationsprogrammet för runtime och SDK för .NET har notariserats sedan den 18 februari 2020. Tidigare versioner är inte notariserade. Om du kör en icke-notariserad app visas ett fel som liknar följande bild:
Mer information om hur enforced-notarization påverkar .NET (och dina .NET-appar) finns i Arbeta med macOS Catalina Notarization.
Libgdiplus
.NET-program som använder System.Drawing.Common-sammansättningen kräver att libgdiplus installeras.
Ett enkelt sätt att få libgdiplus är att använda Homebrew-pakethanteraren ("brew") för macOS. När du har installerat brew installerar du libgdiplus genom att köra följande kommandon i en terminal (kommandotolk):
brew update
brew install mono-libgdiplus
Automatisk installation
macOS har fristående installationsprogram som kan användas för att installera .NET:
Manuell installation
Som ett alternativ till macOS-installationsprogrammet för .NET kan du ladda ned och installera SDK och körning manuellt. Manuell installation utförs vanligtvis som en del av kontinuerlig integreringstestning. För utvecklare eller användare är det vanligtvis bättre att använda ett installationsprogram.
Ladda ned en binär version för antingen SDK:t eller körningen från någon av följande platser. .NET SDK innehåller motsvarande körning:
Extrahera den nedladdade filen och använd export
kommandot för att ange DOTNET_ROOT
platsen för den extraherade mappen och se sedan till att .NET finns i PATH. När du exporterar DOTNET_ROOT
blir .NET CLI-kommandona tillgängliga i terminalen. Mer information om .NET-miljövariabler finns i miljövariabler för .NET SDK och CLI.
Olika versioner av .NET kan extraheras till samma mapp, som samexisterar sida vid sida.
Exempel
Följande kommandon använder Bash för att ange miljövariabeln DOTNET_ROOT
till den aktuella arbetskatalogen följt av .dotnet
. Katalogen skapas om den inte finns. Miljövariabeln DOTNET_FILE
är filnamnet för den binära .NET-version som du vill installera. Den här filen extraheras till DOTNET_ROOT
katalogen. DOTNET_ROOT
Både katalogen och dess tools
underkatalog läggs till i PATH
miljövariabeln.
Viktigt!
Om du kör de här kommandona ska du komma ihåg att ändra DOTNET_FILE
värdet till namnet på den .NET-binärfil som du laddade ned.
DOTNET_FILE=dotnet-sdk-8.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
Du kan installera mer än en version av .NET i samma mapp.
Du kan också installera .NET i hemkatalogen som identifieras av variabeln HOME
eller ~
sökvägen:
export DOTNET_ROOT=$HOME/.dotnet
Verifiera nedladdade binärfiler
När du har laddat ned ett installationsprogram kontrollerar du att filen inte har ändrats eller skadats. Du kan kontrollera kontrollsumman på datorn och sedan jämföra den med vad som rapporterades på nedladdningswebbplatsen.
När du laddar ned ett installationsprogram eller en binär fil från en officiell nedladdningssida visas kontrollsumman för filen. Välj knappen Kopiera för att kopiera kontrollsummavärdet till Urklipp.
sha512sum
Använd kommandot för att skriva ut kontrollsumman för filen som du har laddat ned. Följande kommando rapporterar till exempel kontrollsumman för filen 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
Jämför kontrollsumman med värdet som tillhandahålls av nedladdningswebbplatsen.
Viktigt!
Även om en Linux-fil visas i dessa exempel gäller den här informationen lika för macOS.
Använda en checksumfil för att verifiera
Viktig information om .NET innehåller en länk till en checksumfil som du kan använda för att verifiera den nedladdade filen. Följande steg beskriver hur du laddar ned checksum-filen och validerar en .NET-installationsbinär fil:
Sidan viktig information för .NET 8 på GitHub på https://github.com/dotnet/core/tree/main/release-notes/8.0 innehåller ett avsnitt med namnet Versioner. Tabellen i det avsnittet länkar till nedladdningar och kontrollsummor för varje .NET 8-version:
Välj länken för den version av .NET som du laddade ned. I föregående avsnitt användes .NET SDK 8.0.100, som finns i .NET 8.0.0-versionen.
På versionssidan kan du se .NET Runtime- och .NET SDK-versionen och en länk till kontrollsummafilen:
Kopiera länken till checksum-filen.
Använd följande skript, men ersätt länken för att ladda ned lämplig kontrollsummafil:
curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt
Med både checksum-filen och .NET-versionsfilen nedladdad till samma katalog använder du
sha512sum -c {file} --ignore-missing
kommandot för att verifiera den nedladdade filen.När valideringen har godkänts ser du att filen skrivs ut med OK-status :
$ sha512sum -c 8.0.0-sha.txt --ignore-missing dotnet-sdk-8.0.100-linux-x64.tar.gz: OK
Om du ser filen markerad som MISSLYCKAD är filen du laddade ned inte giltig och bör inte användas.
$ 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
Ange miljövariabler systemomfattande
Om du använde anvisningarna i avsnittet Exempel på manuell installation gäller de variabler som angetts endast för den aktuella terminalsessionen. Lägg till dem i din gränssnittsprofil. Det finns många olika gränssnitt tillgängliga för macOS och var och en har en annan profil. Till exempel:
- Bash Shell: ~/.profile, /etc/profile
- Korn Shell: ~/.kshrc eller .profile
- Z Shell: ~/.zshrc eller .zprofile
Ange följande två miljövariabler i din gränssnittsprofil:
DOTNET_ROOT
Den här variabeln är inställd på mappen .NET installerades till, till exempel
$HOME/.dotnet
:export DOTNET_ROOT=$HOME/.dotnet
PATH
Den här variabeln bör innehålla både
DOTNET_ROOT
mappen ochDOTNET_ROOT/tools
mappen:export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
Armbaserade Mac-datorer
I följande avsnitt beskrivs vad du bör tänka på när du installerar .NET på en Arm-baserad Mac.
Det finns stöd för
I följande tabell beskrivs vilka versioner av .NET som stöds på en Arm-baserad Mac:
.NET-version | Arkitektur | SDK | Körmiljö | Sökvägskonflikt |
---|---|---|---|---|
8 | Arm64 | Ja | Ja | Nej |
8 | x64 | Ja | Ja | Nej |
7 | Arm64 | Ja | Ja | Nej |
7 | x64 | Ja | Ja | Nej |
6 | Arm64 | Ja | Ja | Nej |
6 | x64 | Ja | Ja | Nej |
Från och med .NET 6 finns x64- och Arm64-versionerna av .NET SDK oberoende av varandra. Om en ny version släpps måste varje installation uppgraderas.
Sökvägsskillnader
På en Arm-baserad Mac installeras alla Arm64-versioner av .NET i den normala mappen /usr/local/share/dotnet/ . Men när du installerar x64-versionen av .NET SDK installeras den i mappen /usr/local/share/dotnet/x64/dotnet/ .
Sökvägskonflikter
Från och med .NET 6 installeras x64 .NET SDK till en egen katalog, enligt beskrivningen i föregående avsnitt. På så sätt kan Arm64- och x64-versionerna av .NET SDK finnas på samma dator. X64 SDK före .NET 6 stöds dock inte och installeras på samma plats som Arm64-versionen, mappen /usr/local/share/dotnet/. Om du vill installera en x64 SDK som inte stöds måste du först avinstallera Arm64-versionen. Motsatsen är också sant, du måste avinstallera x64 SDK som inte stöds för att installera Arm64-versionen.
Sökvägsvariabler
Miljövariabler som lägger till .NET i systemsökvägen, till exempel variabeln PATH
, kan behöva ändras om du har både x64- och Arm64-versionerna av .NET 6 SDK installerat. Dessutom förlitar sig vissa verktyg på miljövariabeln, som också skulle behöva uppdateras för att peka på DOTNET_ROOT
lämplig .NET 6 SDK-installationsmapp.
Installera med Visual Studio för Mac
Visual Studio för Mac installerar .NET SDK när .NET-arbetsbelastningen har valts. Information om hur du kommer igång med .NET-utveckling på macOS finns i Installera Visual Studio 2022 för Mac.
Viktigt!
Visual Studio för Mac dras tillbaka. Mer information finns i Vad händer med Visual Studio för Mac?.
.NET SDK-version | Visual Studio-version |
---|---|
8.0 | Visual Studio 2022 för Mac 17.6.1 eller senare. (Endast tillgänglig som förhandsversionsfunktion.) |
7.0 | Visual Studio 2022 för Mac 17.4 eller senare. |
6,0 | Visual Studio 2022 för Mac 17.0 eller senare. |
Viktigt!
Microsoft har meddelat att Visual Studio för Mac upphör. Visual Studio för Mac stöds inte längre från och med den 31 augusti 2024. Alternativen är:
- Visual Studio Code med C# Dev Kit och relaterade tillägg, till exempel .NET MAUI och Unity.
- Visual Studio körs på Windows på en virtuell dator på Mac.
- Visual Studio körs på Windows på en virtuell dator i molnet.
Mer information finns i Visual Studio för Mac-meddelande om pensionering.
Installera tillsammans med Visual Studio Code
Visual Studio Code är en kraftfull och enkel källkodsredigerare som körs på skrivbordet. Visual Studio Code är tillgängligt för Windows, macOS och Linux.
Visual Studio Code levereras inte med ett automatiserat .NET-installationsprogram som Visual Studio, men det är enkelt att lägga till .NET-stöd.
- Ladda ned och installera Visual Studio Code.
- Ladda ned och installera .NET SDK.
- Installera C#-tillägget från Visual Studio Code Marketplace.
Installera med bash automation
Dotnet-install-skripten används för automatisering och icke-administratörsinstallationer av körningen. Du kan ladda ned skriptet från referenssidan för dotnet-install-skriptet.
Skriptet installerar som standard den senaste lts-versionen (long term support), som är .NET 8. Du kan välja en specifik version genom att ange växeln channel
. Inkludera växeln runtime
för att installera en körning. Annars installerar skriptet SDK: et.
Följande kommando installerar ASP.NET Core-körningen för maximal kompatibilitet. ASP.NET Core-körningen innehåller även standard-.NET-körningen.
./dotnet-install.sh --channel 8.0 --runtime aspnetcore
Docker
Containrar är ett enkelt sätt att isolera programmet från resten av värdsystemet. Containrar på samma dator delar bara kerneln och använder resurser som ges till ditt program.
.NET kan köras i en Docker-container. Officiella .NET Docker-avbildningar publiceras till Microsoft Container Registry (MCR) och kan identifieras på Microsoft .NET Docker Hub-lagringsplatsen. Varje lagringsplats innehåller avbildningar för olika kombinationer av .NET (SDK eller Runtime) och operativsystem som du kan använda.
Microsoft tillhandahåller avbildningar som är skräddarsydda för specifika scenarier. Lagringsplatsen ASP.NET Core innehåller till exempel avbildningar som har skapats för att köra ASP.NET Core-appar i produktion.
Mer information om hur du använder .NET i en Docker-container finns i Introduktion till .NET och Docker och Exempel.
Nästa steg
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för