记一个.NET AOT交叉编译时的坑

记一个.NET AOT交叉编译时的坑

背景:

使用.NET9开发的Avalonia项目需要部署到Linux-arm64

踩坑:

根据官方AOT交叉编译文档配置后执行打包

shell 复制代码
dotnet publish -r linux-arm64

提示error : The PrivateSdkAssemblies ItemGroup is required for _ComputeAssembliesToCompileToNative

找答案:

通过在Github上查找,找到了一个AOT交叉编译的文档

这个文档指出了如果需要交叉编译到对应的编译器,需要对应的ILCompiler包,如果需要交叉编译到Linux-arm64,则需要runtime.linux-arm64.Microsoft.DotNet.ILCompiler

解决:

添加runtime.linux-arm64.Microsoft.DotNet.ILCompilerNUGET包后再执行dotnet publish -r linux-arm64,编译成功

后续:

编译成功后再删除runtime.linux-arm64.Microsoft.DotNet.ILCompiler包引用,再次执行交叉编译,貌似也能成功,可能只是需要这个包把对应的ILCompiler下载回来,后续就不用特别引用了

相关推荐
喵叔哟12 小时前
24.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--认证微服务
微服务·架构·.net
Java Fans13 小时前
在WPF项目中集成Python:Python.NET深度实战指南
python·.net·wpf
书中自有妍如玉14 小时前
.net 使用MQTT订阅消息
java·前端·.net
Kookoos14 小时前
ABP VNext 与 Neo4j:构建基于图数据库的高效关系查询
数据库·c#·.net·neo4j·abp vnext
我是唐青枫15 小时前
.NET AOT 详解
java·服务器·.net
步、步、为营20 小时前
.net ORM框架dapper批量插入
microsoft·.net
步、步、为营20 小时前
.net Span类型和Memory类型
.net
AI.NET 极客圈1 天前
.NET 原生驾驭 AI 新基建实战系列(四):Qdrant ── 实时高效的向量搜索利器
数据库·人工智能·.net
绿荫阿广1 天前
互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(五):使用.NET为树莓派开发Wifi配网功能
c#·.net
唐青枫2 天前
.NET AOT 详解
.net