記一個.NET AOT交叉編譯時的坑

記一個.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.ILCompilerNUGET包后再執行dotnet publish -r linux-arm64,編譯成功

后續:

編譯成功后再刪除runtime.linux-arm64.Microsoft.DotNet.ILCompiler包引用,再次執行交叉編譯,貌似也能成功,可能只是需要這個包把對應的ILCompiler下載回來,后續就不用特別引用了

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/75284.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/75284.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/75284.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Linux篇】探索進程地址空間:計算機背后的虛擬世界

進程地址空間的奧秘:讓你理解程序如何在計算機中生存 一. 程序地址空間1.1 基本概念1.2 虛擬內存管理1.3 為什么存在虛擬地址空間1.3.1 意義 2. 最后 本文將介紹進程地址空間的基本概念與結構,幫助讀者理解操作系統如何管理和分配內存。進程地址空間指的…

17查詢文檔的方式

目錄 1.鼠標放在你要查詢的地方或者選中,按FnF1 2Assistant文檔 3幫助菜單界面 1.鼠標放在你要查詢的地方或者選中,按FnF1 2Assistant文檔 3幫助菜單界面 大家一定要有 查詢文檔 的意識!! 未來實際開發中,一定會用到很多的第三方庫和框架的. 很可能用到的…

壹起航:引領中國工廠邁向全球市場的先鋒

在全球化的浪潮中,中國工廠正積極尋求拓展海外市場的新機遇。面對激烈的國際競爭,如何脫穎而出,成為行業翹楚?壹起航憑借其深厚的行業積淀和創新的營銷理念,為中國工廠提供了全方位的出海解決方案。 一、構建國際化外…

“數據導航儀”:企業遷移知識庫如何賦能精準決策

在全球化與區域經濟一體化的浪潮下,企業遷移已成為經濟發展的重要現象。 無論是為了拓展市場、降低成本,還是為了尋找更好的政策環境,企業遷移都牽動著無數從業者的心。 然而,面對海量且分散的企業遷移信息,金融機構…

理解激活函數,多個網絡層之間如何連接

1. 激活函數如何在兩個層之間作用 如果不在兩個層之間添加激活函數,模型將無法學習非線性關系,表現出像線性模型一樣的局限性。 LeakyReLU(0.2) 是一個激活函數,它的作用是對每一層的輸出進行非線性轉換。激活函數通常在神經網絡中用于增加網…

紅帽Linux怎么重置密碼

完整流程 ●重啟操作系統,進入啟動界面 ●然后按進入選擇項界面 ●找到linux單詞開頭的那一行,然后移動到該行末尾(方向鍵移動或者使用鍵盤上的end),在末尾加入rd.break ●按ctrl x進入rd.break模式 ●在該模式下依次…

pycharm與python版本

python 3.6-3.9 pycharm 2021版本搭配最好 python 3.8 pycharm 2019版本搭配最好 pycharm各版本下載

Java系統集成AI大模型:是否需要訓練模型及實現路徑

越來越多的Java系統希望通過集成AI大模型能力來提升智能化水平。然而,許多開發者在面對這一任務時,常常會有一個疑問:是否需要訓練AI大模型才能實現這一目標?本文將深入探討這一問題,并提供詳細的解決方案。 一、是否…

論文閱讀筆記:Denoising Diffusion Implicit Models (3)

0、快速訪問 論文閱讀筆記:Denoising Diffusion Implicit Models (1) 論文閱讀筆記:Denoising Diffusion Implicit Models (2) 論文閱讀筆記:Denoising Diffusion Implicit Models &#xff08…

【Linux】Linux 系統啟動流程詳解

1. BIOS/UEFI 階段 硬件自檢(POST) BIOS/UEFI 執行硬件檢查(內存、CPU、外設等)。若硬件異常,通過蜂鳴碼或屏幕提示錯誤。 選擇啟動設備 按配置順序(硬盤、U盤、網絡等)尋找可引導設備。BIOS&a…

C++封裝、繼承、多態(虛函數)

目錄 1、封裝 2、繼承 繼承方式: (1)公有繼承;public (2)保護繼承;protected (3)私有繼承;private 菱形繼承: 同名隱藏? 含義…

藍橋杯沖刺:一維前綴和

系列文章目錄 藍橋杯系列:一維前綴和 文章目錄 系列文章目錄前言一、暴力的寫法:二、一維前綴和的模板: 具體實現: 三、具體例題:求和 1.題目參考:2.以下是具體代碼實現: 總結 前言 上次我介紹…

使用UDP建立連接,會存在什么問題?

使用UDP建立連接,會存在可靠性、有序性、連接狀態管理等方面的問題: 1、數據傳輸不可靠: UDP沒有確認和重傳機制,發送方發送數據后,不會等待接收方的確認消息。這意味著如果數據在傳輸過程中丟失,發送方不…

YOLOv5配置訓練以及華為昇騰910B推理

參考文章: 保姆式yolov5教程,訓練你自己的數據集 - 知乎 Windows 10|11下安裝mmyolo-0.5.0版本 - 知乎 Ubuntu22.04安裝教程&基于華為Ascend AI處理器的om模型atc轉換環境安裝_ubuntu安裝atc工具-CSDN博客嵌入式AI---在華為昇騰推理自己的yolov5目標…

基于yolov11的汽車損傷檢測系統python源碼+onnx模型+評估指標曲線+精美GUI界面

【算法介紹】 基于YOLOv11的汽車損傷檢測系統是一種先進的計算機視覺技術,旨在快速準確地識別汽車的各種損傷類型。該系統利用YOLOv11模型的強大性能,實現了對車輛損傷的精確檢測與分類。 該系統能夠識別的損傷類型包括裂紋(crack&#xff…

[ 3分鐘算法 ] | 遞歸搜索題目 : 合并兩個有序鏈表(遞歸版)

目錄 1. 題目鏈接: 2. 思路分析: 1. 重復子問題? 2. 具體子問題? 3. 遞歸出口? 3. 代碼實現: 4. 小結: 1. 循環(迭代) vs 遞歸 2. 遞歸 vs 深搜 1. 題目鏈接: 21. 合并…

單元測試原則之——不要模擬值對象 (1)

1. 什么是值對象(Value Objects)? 值對象是指那些不可變且僅通過其屬性(數據)來定義的對象。它們通常沒有復雜的邏輯或行為,主要用于存儲和傳遞數據。例如: ● 字符串(String) ● 數字(Integer, Double) ● 日期(LocalDate, Instant) ● 自定義的簡單數據類(如…

【軟件】在Windows和Ubuntu上使用TFTP和NFS

在Windows和Ubuntu上使用TFTP和NFS 零、介紹 最近在玩Linux開發板,在開發的過程中發現需要用到tftp和nfs來幫助傳輸文件,故此記錄如何使用這兩種軟件。 TFTP(Trivial File Transfer Protocol) :是一種簡化的文件傳輸…

JS判斷變量是否為空的方法

在 JavaScript 中,判斷變量是否為空需要根據不同的數據類型和具體需求來處理。以下是常見場景的解決方案: 1. 基礎判斷:null 或 undefined javascript if (value null || value undefined) {// 變量為空 } 或簡寫為: javasc…

Linux更換掛載nfs遷移數據流程

當前:原nfs(10.16.2.1:/myData)掛載在/myData,新的nfs(10.16.2.2:/myData)未掛載 目標:把舊nfs的數據遷移到新的nfs上,并把新nfs掛載到/myData 步驟: 1、新nfs掛載到一…