Distribuera .NET-appar på ARM-datorer med enkelkort
Distributionen av .NET-appar till enkortsdatorer är identisk med andra plattformars. Din app kan köras som fristående eller ramverksberoende distributionslägen. Det finns fördelar med varje strategi. Mer information finns i Översikt över publicering av .NET-program.
Distribuera en ramverksberoende app
Utför följande steg för att distribuera din app som en ramverksberoende app:
Kontrollera att SSH är aktiverat på enheten. För Raspberry Pi, se Konfigurera en SSH-server i Raspberry Pi-dokumentationen.
Installera .NET på enheten med hjälp av dotnet-install-skripten. Slutför följande steg från en Bash-prompt på enheten (lokal eller SSH):
Kör följande kommando för att installera .NET:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel STS
Kommentar
Detta installerar den senaste versionen. Om du behöver en specifik version ersätter du parametern
--channel STS
med--version <VERSION>
, där<VERSION>
är den specifika versionsversionen.För att förenkla sökvägsmatchningen lägger du till en
DOTNET_ROOT
miljövariabel och lägger till .dotnet-katalogen$PATH
i med följande kommandon:echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc source ~/.bashrc
Kontrollera .NET-installationen med följande kommando:
dotnet --version
Kontrollera att den version som visas matchar den version som du har installerat.
Publicera appen på utvecklingsdatorn enligt följande, beroende på utvecklingsmiljö.
- Om du använder Visual Studio distribuerar du appen till en lokal mapp. Innan du publicerar väljer du Redigera i sammanfattningen av publiceringsprofilen och väljer fliken Inställningar. Kontrollera att Distributionsläget är inställt på Framework-beroende och Målkörning är inställt på Bärbar.
- Om du använder .NET CLI använder du kommandot dotnet publish . Inga ytterligare argument krävs.
Med hjälp av en SFTP-klient som
scp
kopierar du filerna från publiceringsplatsen på utvecklingsdatorn till en ny mapp i SBC.Om du till exempel vill använda
scp
kommandot för att kopiera filer från utvecklingsdatorn till din SBC öppnar du en kommandotolk och kör följande:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
Där:
- Alternativet
-r
instruerarscp
att kopiera filer rekursivt. - /publish-location/ är mappen som du publicerade till i föregående steg.
pi@raspberypi
är användarens och värdnamnen i formatet<username>@<hostname>
.- /home/pi/deployment-location/ är den nya mappen på SBC.
Dricks
De senaste versionerna av Windows har OpenSSH, som innehåller
scp
, förinstallerat.- Alternativet
Kör appen från en Bash-prompt på Raspberry Pi (lokal eller SSH). För att göra detta anger du distributionsmappen som den aktuella katalogen och kör följande kommando (där HelloWorld.dll är startpunkten för appen):
dotnet HelloWorld.dll
Distribuera en fristående app
Utför följande steg för att distribuera din app som en fristående app:
Kontrollera att SSH är aktiverat på enheten. För Raspberry Pi, se Konfigurera en SSH-server i Raspberry Pi-dokumentationen.
Publicera appen på utvecklingsdatorn enligt följande, beroende på utvecklingsmiljö.
Om du använder Visual Studio distribuerar du appen till en lokal mapp. Innan du publicerar väljer du Redigera i sammanfattningen av publiceringsprofilen och väljer fliken Inställningar. Kontrollera att distributionsläget är inställt på Fristående och Målkörning är inställt på linux-arm64.
Om du använder .NET CLI använder du kommandot dotnet publish med argumenten
--runtime linux-arm64
och--self-contained
:dotnet publish --runtime linux-arm64 --self-contained
Viktigt!
Om du använder ett 32-bitars operativsystem måste du rikta in dig på körningen
linux-arm
.Med hjälp av en SFTP-klient som
scp
kopierar du filerna från publiceringsplatsen på utvecklingsdatorn till en ny mapp i SBC.Om du till exempel vill använda
scp
kommandot för att kopiera filer från utvecklingsdatorn till din SBC öppnar du en kommandotolk och kör följande:scp -r /publish-location/* pi@raspberrypi:/home/pi/deployment-location/
Där:
- Alternativet
-r
instruerarscp
att kopiera filer rekursivt. - /publish-location/ är mappen som du publicerade till i föregående steg.
pi@raspberypi
är användarens och värdnamnen i formatet<username>@<hostname>
.- /home/pi/deployment-location/ är den nya mappen på SBC.
Dricks
De senaste versionerna av Windows har OpenSSH, som innehåller
scp
, förinstallerat.- Alternativet
Kör appen från en Bash-prompt på enheten (lokal eller SSH). För att göra detta anger du den aktuella katalogen till distributionsplatsen och utför följande steg:
Ge den körbara körningsbehörigheten (där
HelloWorld
är det körbara filnamnet).chmod +x HelloWorld
Kör den körbara filen.
./HelloWorld