A .NET telepítése macOS rendszeren

Ebből a cikkből megtudhatja, hogyan telepítheti a .NET-et macOS rendszerre. A .NET a futtatókörnyezetből és az SDK-ból áll. A futtatókörnyezet egy .NET-alkalmazás futtatására szolgál, és lehet, hogy nem része az alkalmazásnak. Az SDK .NET-alkalmazások és -kódtárak létrehozására szolgál. A .NET-futtatókörnyezetet mindig feltelepíti a rendszer az SDK-val együtt.

A .NET legújabb verziója 8.

Támogatott kiadások

A támogatott kiadásoknak két típusa van: a Hosszú távú támogatás (LTS) és a Standard Term Support (STS) kiadások. Az összes kiadás minősége ugyanaz. Az egyetlen különbség a támogatás hossza. Az LTS-kiadások három évig ingyenes támogatást és javításokat kapnak. Az STS-kiadások 18 hónapig ingyenes támogatást és javításokat kapnak. További információt a .NET támogatási szabályzatában talál.

Az alábbi táblázat a jelenleg támogatott .NET-kiadásokat és a macOS azon verzióit tartalmazza, amelyen támogatottak:

Operációs rendszer .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

A .NET-verziók és azok támogatási életciklusának teljes listáját a .NET támogatási szabályzatában találja.

Nem támogatott kiadások

A .NET következő verziói már nem támogatottak ❌ :

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

Futásidejű információk

A futtatókörnyezet a .NET-tel létrehozott alkalmazások futtatására szolgál. Amikor egy alkalmazás szerzője közzétesz egy alkalmazást, belefoglalhatja a futtatókörnyezetet az alkalmazásba. Ha nem tartalmazzák a futtatókörnyezetet, a felhasználónak kell telepítenie a futtatókörnyezetet.

Két különböző futtatókörnyezetet telepíthet macOS rendszeren:

  • ASP.NET Core-futtatókörnyezet
    ASP.NET Core-alkalmazásokat futtat. Tartalmazza a .NET-futtatókörnyezetet.

  • .NET-futtatókörnyezet
    Ez a futtatókörnyezet a legegyszerűbb futtatókörnyezet, és nem tartalmaz más futtatókörnyezetet. Erősen ajánlott telepíteni ASP.NET Core-futtatókörnyezetet a .NET-alkalmazásokkal való legjobb kompatibilitás érdekében.

SDK-információk

Az SDK .NET-alkalmazások és -kódtárak készítésére és közzétételére szolgál. Az SDK telepítése mindkét futtatókörnyezetet tartalmazza: ASP.NET Core és .NET.

Közjegyzői jelölés

A macOS Catalina (10.15-ös verzió) verziótól kezdve a 2019. június 1. után létrehozott, fejlesztői azonosítóval ellátott összes szoftvert közjegyzővel kell elérhetővé tenni. Ez a követelmény a .NET-futtatókörnyezetre, a .NET SDK-ra és a .NET-tel létrehozott szoftverekre vonatkozik.

A .NET futtatókörnyezeti és SDK-telepítőit 2020. február 18. óta nem hitelesítették. A korábbi kiadású verziók nem lesznek notarizálva. Ha nem hitelesített alkalmazást futtat, a következő képhez hasonló hibaüzenet jelenik meg:

macOS Catalina közjegyzői riasztás

További információ arról, hogy a kényszerített hitelesítés hogyan befolyásolja a .NET-et (és a .NET-alkalmazásokat), olvassa el a macOS Catalina Notarization használata című témakört.

libgdiplus

A System.Drawing.Common szerelvényt használó .NET-alkalmazások telepítéséhez libgdiplus szükséges.

A libgdiplus beszerzésének egy egyszerű módja a Homebrew ("brew") csomagkezelő használata macOS-hez. A brew telepítése után telepítse a libgdiplust a következő parancsok végrehajtásával egy terminál (parancs) parancssorában:

brew update
brew install mono-libgdiplus

Automatikus telepítés

a macOS különálló telepítőkkel rendelkezik, amelyek a .NET telepítéséhez használhatók:

Manuális telepítés

A .NET-hez készült macOS-telepítők alternatívájaként letöltheti és manuálisan telepítheti az SDK-t és a futtatókörnyezetet. A manuális telepítés általában a folyamatos integrációs tesztelés részeként történik. Egy fejlesztő vagy felhasználó számára általában jobb, ha telepítőt használ.

Töltsön le egy bináris kiadást az SDK-hoz vagy a futtatókörnyezethez az alábbi webhelyek egyikéről. A .NET SDK tartalmazza a megfelelő futtatókörnyezetet:

Bontsa ki a letöltött fájlt, és a export paranccsal állítsa be DOTNET_ROOT a kibontott mappa helyét, majd győződjön meg arról, hogy a .NET a PATH-ban van. Az DOTNET_ROOT exportálás elérhetővé teszi a .NET CLI-parancsokat a terminálban. A .NET környezeti változókkal kapcsolatos további információkért lásd a .NET SDK és a CLI környezeti változóit.

A .NET különböző verziói ugyanahhoz a mappához nyerhetők ki, amelyek egymás mellett találhatók.

Példa

Az alábbi parancsok a Bash használatával állítják be a környezeti változót DOTNET_ROOT az aktuális munkakönyvtárra, majd a következőre .dotnet. Ez a könyvtár akkor jön létre, ha nem létezik. A DOTNET_FILE környezeti változó a telepíteni kívánt .NET bináris kiadás fájlneve. Ezt a fájlt a rendszer kinyeri a DOTNET_ROOT könyvtárba. DOTNET_ROOT A címtár és az tools alkönyvtár is hozzá lesz adva a PATH környezeti változóhoz.

Fontos

Ha ezeket a parancsokat futtatja, ne felejtse el módosítani az DOTNET_FILE értéket a letöltött .NET-bináris névre.

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

A .NET több verzióját is telepítheti ugyanabban a mappában.

A .NET-et a változó vagy ~ elérési HOME út által azonosított kezdőkönyvtárba is telepítheti:

export DOTNET_ROOT=$HOME/.dotnet

Letöltött bináris fájlok ellenőrzése

A telepítő letöltése után ellenőrizze, hogy a fájl nem módosult vagy sérült-e. Ellenőrizheti az ellenőrzőösszeget a számítógépen, majd összehasonlíthatja a letöltési webhelyen jelentettekkel.

Amikor letölt egy telepítőt vagy bináris fájlt egy hivatalos letöltési oldalról, megjelenik a fájl ellenőrzőösszege. A Másolás gombra kattintva másolja az ellenőrzőösszeg értékét a vágólapra.

A .NET letöltési oldal ellenőrzőösszeggel

sha512sum A parancs használatával kinyomtathatja a letöltött fájl ellenőrzőösszegét. A következő parancs például a dotnet-sdk-8.0.100-linux-x64.tar.gz fájl ellenőrzőösszegét jelenti:

$ sha512sum dotnet-sdk-8.0.100-linux-x64.tar.gz
13905ea20191e70baeba50b0e9bbe5f752a7c34587878ee104744f9fb453bfe439994d38969722bdae7f60ee047d75dda8636f3ab62659450e9cd4024f38b2a5  dotnet-sdk-8.0.100-linux-x64.tar.gz

Hasonlítsa össze az ellenőrzőösszeget a letöltési webhely által megadott értékkel.

Fontos

Annak ellenére, hogy ezekben a példákban egy Linux-fájl látható, ez az információ a macOS rendszerre is vonatkozik.

Ellenőrzőösszeg-fájl használata az ellenőrzéshez

A .NET kibocsátási megjegyzései egy ellenőrzőösszegfájlra mutató hivatkozást tartalmaznak, amellyel ellenőrizheti a letöltött fájlt. Az alábbi lépések bemutatják, hogyan töltheti le az ellenőrzőösszegfájlt, és hogyan ellenőrizheti a .NET telepítési bináris fájlokat:

  1. A GitHubon a .NET 8 kibocsátási megjegyzésoldala https://github.com/dotnet/core/tree/main/release-notes/8.0 a Releases nevű szakaszt tartalmazza. Az ebben a szakaszban található táblázat az egyes .NET 8-kiadások letöltési és ellenőrzőösszegfájljaira hivatkozik:

    A GitHub kibocsátási megjegyzéseinek verziótáblája a .NET-hez

  2. Válassza ki a letöltött .NET-verzió hivatkozását. Az előző szakasz a .NET SDK 8.0.100-at használta, amely a .NET 8.0.0 kiadásban található.

  3. A kiadási lapon láthatja a .NET-futtatókörnyezet és a .NET SDK verzióját, valamint az ellenőrzőösszegfájlra mutató hivatkozást:

    A .NET ellenőrzőösszegeit tartalmazó letöltési táblázat

  4. Másolja ki az ellenőrzőösszegfájlra mutató hivatkozást.

  5. Használja a következő szkriptet, de cserélje le a hivatkozást a megfelelő ellenőrzőösszegfájl letöltéséhez:

    curl -O https://dotnetcli.blob.core.windows.net/dotnet/checksums/8.0.0-sha.txt
    
  6. Az ellenőrzőösszeg- és a .NET-kiadási fájl ugyanazon könyvtárba való letöltésével a sha512sum -c {file} --ignore-missing parancs használatával ellenőrizze a letöltött fájlt.

    Amikor az ellenőrzés sikeres, megjelenik az OK állapotú fájl:

    $ sha512sum -c 8.0.0-sha.txt --ignore-missing
    dotnet-sdk-8.0.100-linux-x64.tar.gz: OK
    

    Ha a sikertelenként megjelölt fájlt látja, a letöltött fájl érvénytelen, ezért nem szabad használni.

    $ 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
    

Környezeti változók beállítása rendszerszintűen

Ha a Manuális telepítési példa szakaszban szereplő utasításokat használta, a beállított változók csak az aktuális terminálmunkamenetre vonatkoznak. Adja hozzá őket a rendszerhéjprofilhoz. A macOS-hez számos különböző rendszerhéj érhető el, és mindegyik más profillal rendelkezik. Példa:

  • Bash Shell: ~/.profile, /etc/profile
  • Korn Shell: ~/.kshrc vagy .profile
  • Z Shell: ~/.zshrc vagy .zprofile

Állítsa be a következő két környezeti változót a rendszerhéjprofilban:

  • DOTNET_ROOT

    Ez a változó arra a mappára van állítva, amelybe a .NET telepítve volt, például $HOME/.dotnet:

    export DOTNET_ROOT=$HOME/.dotnet
    
  • PATH

    Ennek a változónak tartalmaznia kell a DOTNET_ROOT mappát és a DOTNET_ROOT/tools mappát is:

    export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
    

Arm-alapú Mac gépek

Az alábbi szakaszok ismertetik a .NET Arm-alapú Mac gépekre való telepítésekor megfontolandó szempontokat.

Támogatott műveletek

Az alábbi táblázat azt ismerteti, hogy a .NET mely verziói támogatottak arm-alapú Mac gépeken:

.NET-verzió Architektúra SDK Futtatókörnyezet Elérési út ütközése
8 Arm64 Igen Igen Nem
8 x64 Igen Igen Nem
7 Arm64 Igen Igen Nem
7 x64 Igen Igen Nem
6 Arm64 Igen Igen Nem
6 x64 Igen Igen Nem

A .NET 6-tól kezdve a .NET SDK x64- és Arm64-verziói egymástól függetlenül léteznek. Ha új verziót ad ki, minden telepítést frissíteni kell.

Elérésiút-különbségek

Arm-alapú Mac gépen a .NET összes Arm64-verziója telepítve van a normál /usr/local/share/dotnet/ mappába. A .NET SDK x64-es verziójának telepítésekor azonban az /usr/local/share/dotnet/x64/dotnet/ mappába lesz telepítve.

Elérésiút-ütközések

A .NET 6-tól kezdve az x64 .NET SDK az előző szakaszban leírtak szerint a saját könyvtárába telepedik. Ez lehetővé teszi, hogy a .NET SDK Arm64- és x64-verziói ugyanazon a gépen létezhessenek. A .NET 6 előtti x64 SDK-k azonban nem támogatottak, és ugyanarra a helyre telepítenek, mint az Arm64-verzió, a /usr/local/share/dotnet/ mappa. Ha nem támogatott x64 SDK-t szeretne telepíteni, először el kell távolítania az Arm64-verziót. Az ellenkezője is igaz, el kell távolítania a nem támogatott x64 SDK-t az Arm64-verzió telepítéséhez.

Elérésiút-változók

Ha a .NET 6 SDK x64- és Arm64-verziói is telepítve vannak, előfordulhat, hogy módosítani kell azokat a környezeti változókat, amelyek .NET-et adnak hozzá a rendszer elérési útjához, például a PATH változóhoz. Emellett néhány eszköz a DOTNET_ROOT környezeti változóra támaszkodik, amelyet frissíteni kell, hogy a megfelelő .NET 6 SDK telepítési mappára mutasson.

Telepítés a Mac Visual Studióval

A Mac Visual Studio telepíti a .NET SDK-t a .NET számítási feladat kiválasztásakor. A .NET-fejlesztés macOS rendszeren való használatának megkezdéséhez lásd : Visual Studio 2022 for Mac telepítése.

Fontos

A Visual Studio for Mac kivezetése folyamatban van. További információ: Mi történik a Mac Visual Studióval?

.NET SDK-verzió Visual Studio-verzió
8.0 Visual Studio 2022 for Mac 17.6.1 vagy újabb. (Csak előzetes verziójú funkcióként érhető el.)
7,0 Visual Studio 2022 for Mac 17.4 vagy újabb.
6,0 Visual Studio 2022 for Mac 17.0 vagy újabb.

macOS Visual Studio 2022 for Mac, a kiválasztott .NET számítási feladattal.

Fontos

A Microsoft bejelentette a Mac Visual Studio kivonását. A Visual Studio for Mac 2024. augusztus 31-től már nem támogatott. Alternatív lehetőségek:

  • Visual Studio Code a C# Dev Kittel és a kapcsolódó bővítményekkel, például a .NET MAUI-val és a Unityvel.
  • A Windowson futó Visual Studio egy Mac rendszerű virtuális gépen fut.
  • Windows rendszeren futó Visual Studio egy felhőbeli virtuális gépen.

További információt a Mac Visual Studio kivonási bejelentésében talál.

Telepítés a Visual Studio Code mellett

A Visual Studio Code egy hatékony és egyszerű forráskódszerkesztő, amely az asztalon fut. A Visual Studio Code Windows, macOS és Linux rendszeren érhető el.

Bár a Visual Studio Code nem rendelkezik olyan automatizált .NET-telepítővel, mint a Visual Studio, a .NET-támogatás hozzáadása egyszerű.

  1. Töltse le és telepítse a Visual Studio Code-ot.
  2. Töltse le és telepítse a .NET SDK-t.
  3. Telepítse a C# bővítményt a Visual Studio Code piacteréről.

Telepítés bash automation használatával

A dotnet-install szkripteket a futtatókörnyezet automatizálására és nem rendszergazdai telepítésére használják. A szkriptet a dotnet-install szkript referenciaoldaláról töltheti le.

A szkript alapértelmezés szerint telepíti a legújabb hosszú távú támogatási (LTS) verziót, amely a .NET 8. A kapcsoló megadásával kiválaszthat egy adott kiadást channel . Adja meg a runtime kapcsolót futtatókörnyezet telepítéséhez. Ellenkező esetben a szkript telepíti az SDK-t.

Az alábbi parancs telepíti a ASP.NET Core-futtatókörnyezetet a maximális kompatibilitás érdekében. A ASP.NET Core-futtatókörnyezet tartalmazza a standard .NET-futtatókörnyezetet is.

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

Docker

A tárolók használatával egyszerűen elkülönítheti az alkalmazást a gazdarendszer többi részétől. Az ugyanazon a gépen lévő tárolók csak a kernelen osztoznak, és az alkalmazásnak adott erőforrásokat használják.

A .NET egy Docker-tárolóban is futtatható. A hivatalos .NET Docker-rendszerképek közzé vannak téve a Microsoft Container Registryben (MCR), és a Microsoft .NET Docker Hub adattárában találhatók. Minden adattár a .NET (SDK vagy Runtime) és operációs rendszer különböző kombinációihoz használható képeket tartalmaz.

A Microsoft adott forgatókönyvekre szabott képeket biztosít. A ASP.NET Core-adattár például olyan rendszerképeket biztosít, amelyek ASP.NET Core-alkalmazások éles környezetben való futtatásához készültek.

A .NET Docker-tárolókban való használatáról további információt a .NET, valamint a Docker és a minták bemutatása című témakörben talál.

Következő lépések