记一个.NET AOT交叉编译时的坑
背景:
使用.NET9开发的Avalonia项目需要部署到Linux-arm64
踩坑:
根据官方AOT交叉编译文档配置后执行打包
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.ILCompiler
NUGET包后再执行dotnet publish -r linux-arm64
,编译成功
后续:
编译成功后再删除runtime.linux-arm64.Microsoft.DotNet.ILCompiler
包引用,再次执行交叉编译,貌似也能成功,可能只是需要这个包把对应的ILCompiler下载回来,后续就不用特别引用了
来源链接:https://www.cnblogs.com/wujuncheng/p/18806184
© 版权声明
本站所有资源来自于网络,仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您(转载者)自己承担!
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
THE END
暂无评论内容