32

树莓派4上跑 .NET Core 3.0,这次,真·64位!

 4 years ago
source link: https://www.tuicool.com/articles/mABrYf6
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

以下文章来源于汪宇杰博客 ,作者汪宇杰

导语

前不久我写了一篇《 在树莓派4上安装 .NET Core 3.0 运行时及 SDK 》,以及后续《 “自启动”树莓派上的 .NET Core 3.0 环境 》、《 Nginx 配置内网访问树莓派4 ASP.NET Core 3.0 网站 》、《 田牌魔术 | .NET Core 3.0 + Azure 远程点亮树莓派上的一盏灯 》。但是由于当年树莓派官方系统 Raspbian 并没有64位版,因此只能跑ARM32的.NET Core 3.0。不过现在,情况有所改变,今天我成功在树莓派4上运行了 ARM64 的 .NET Core 3.0

Gentoo

由于 Windows 10 IoT Core (以及上面的UWP们)暴尸荒野而 苟且偷生使用 Linux 的我,已经彻底开荤了。最近我发现有个叫 Gentoo 的 Linux 系统,支持树莓派4的64位CPU。项目地址:

https://github.com/sakaki-/gentoo-on-rpi-64bit

而且作者还是个妹子

6jUveuj.jpg!web

系统下载和安装过程不多叙述了,和安装树莓派的其他系统完全一致。安装好以后即可下载.NET Core 3.0 SDK,ARM64位版:

wget https://download.visualstudio.microsoft.com/download/pr/cbc83a0e-895c-4959-99d9-21cd11596e64/b0e59c2ba2bd3ef0f592acbeae7ab27d/dotnet-sdk-3.0.100-linux-arm64.tar.gz

wget https://download.visualstudio.microsoft.com/download/pr/5cbf9f66-7945-43e2-9b7c-351f900e9893/2fcd48f3d4db99283ebdb46daf9bacec/aspnetcore-runtime-3.0.0-linux-arm64.tar.gz

mkdir dotnet-arm64

tar zxf aspnetcore-runtime-3.0.0-linux-arm64.tar.gz -C $HOME/dotnet-arm64

tar zxf dotnet-sdk-3.0.100-linux-arm64.tar.gz -C $HOME/dotnet-arm64

export DOTNET_ROOT=$HOME/dotnet-arm64

export PATH=$PATH:$HOME/dotnet-arm64

RFfeeaZ.jpg!web

其余.NET Core骚操作和我之前写的文章一样,也可以玩ASP.NET Core。

Ubuntu 19.10

Ubuntu 最近发布了自称支持树莓派4的19.10版本。其树莓派4的64位镜像下载及安装文档在这里:

https://ubuntu.com/download/iot/raspberry-pi

RNFnuab.png!web

但不幸的是,我始终没能成功在树莓派4上启动这个版本的Ubuntu系统。一个叫做 cloud-init 的货成功卡住每一次启动,因此没法给大家实验 Ubuntu 在树莓派4上是否能跑 ARM64 的 .NET Core。

官方 Raspbian 的64位版

在树莓派官方论坛上,有Raspbian的官方开发人员dom发了这么个贴:

Pi4 64-bit raspbian kernel for testing - Focus on Pi4

https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=250730&hilit=64+bit

这是个非常易爆的测试版,还没有正式发布。我也尝试了一下,结果发现系统内核虽然是64位的,但是好像因为userland是32位的关系,.NET Core 3.0 ARM64并没识别成功。

结论

牛逼还是妹子牛逼


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK