记一个.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下载回来,后续就不用特别引用了

相关推荐
追逐时光者3 小时前
一个基于 ASP.NET Core 的开源、模块化、多租户应用框架和内容管理系统
后端·.net
SEO-狼术2 天前
.NET WPF 数据编辑器集合提供列表框控件
.net·wpf
SEO-狼术2 天前
Oxygen AI Positron Assistant Enterprise
人工智能·.net
惜.己2 天前
jmeter中java.net.ConnectException: Connection refused: connect
java·jmeter·.net
关关长语3 天前
Dotnet接入AI通过Response创建一个简单控制台案例
人工智能·.net·ai dotnet
LateFrames3 天前
用 【C# + Winform + MediaPipe】 实现人脸468点识别
python·c#·.net·mediapipe
追逐时光者3 天前
精选 4 款开源免费、美观实用的 MAUI UI 组件库,助力轻松构建美观且功能丰富的应用程序!
后端·.net
我是唐青枫3 天前
深入掌握 FluentMigrator:C#.NET 数据库迁移框架详解
数据库·c#·.net
绿荫阿广3 天前
用纯.NET开发并制作一个智能桌面机器人(六):使用.NET开发一个跨平台功能完善的小智AI客户端
c#·.net·asp.net core·maui·winui
周杰伦fans4 天前
c#设计模式—访问者模式
c#·.net