面向 ARM64 的 .NET Core 3.0 发布

Dan*_* P. 7 publish arm64 .net-core .net-core-3.0

有谁知道如何为 ARM64 发布 .NET Core 3.0 应用程序?我只能选择“linux-arm”而不能选择“linux-arm64”。将 linux-arm 与 x64 结合设置也不起作用。它说设置不兼容。

正如此处所述,它应该已经得到支持:https : //github.com/dotnet/core/blob/master/release-notes/3.0/3.0-supported-os.md

Don*_*328 10

linux-arm64 在发布配置文件设置中不可用,但如果您使用 linux-arm 构建它并.pubxml随后手动编辑文件,它可以在 pi 上正常工作。正如您提供的链接所示,它是受支持的。看来它还没有被添加到工具中。

像平常一样发布然后编辑即可.pubxml

改成 <RuntimeIdentifier>linux-arm</RuntimeIdentifier><RuntimeIdentifier>linux-arm64</RuntimeIdentifier>

然后您就可以在 64 位 Raspberry pi 上发布。

截图示例

瞧!


Pan*_*vos 9

链接的文章指向支持的操作系统,而不是运行时标识符列表。可以在.NET Core RID Catalog 中找到 RID 的解释和常见的列表。该完整列表可在CoreFX回购可以发现,runtime.jsonlinux-arm64包括在内,但这只是基本操作系统。有很多像特殊标识"debian-arm64""debian.10-arm64""rhel-arm64""ubuntu-arm64"。您必须使用与您的发行版相对应的 RID。

正如 RID 目录所解释的,运行时标识符由操作系统、操作系统版本、体系结构和可选的额外限定符组成。

[操作系统].[版本]-[架构]-[附加限定符]

ubuntu-arm64是 ARM64 的通用 Ubuntu 版本,而ubuntu.19.04-arm64专门针对 Ubuntu 19.04。

Raspbian 没有特定的版本。如果您想以一般的 Raspberry 为目标,则必须使用linux-arm. 如果您想利用 4GB RAM 模型,假设您已经使用 64 位操作系统,您可能可以将linux-arm64.