当前位置: 首页 > news >正文

.net 8程序如何在信创的arm64架构下运行【nuget包如何判断能不能在arm架构跑呢】

  最近有些老的应用需要进行信创改造,其中需要依赖到一些包和库。

      首先我们的应用是跑在docker上的,然后打包一个arm的.net 7或者8的运行时,就OK了。

      先说我碰到的坑,就是有些dll,在arm架构下加载不了。原因是因为有些dll不是纯C#代码,包含了一些第三方的C++代码,通过DllImport 引入的,之前dllImport对应的动态链接库,没有提供arm架构的版本,所以导致跑不起来报错,于是变详细的了解一下整个过程。

      假设我们定义了一个Common的类库

情况一:Common 类库是纯 C# 代码(最常见)

  如果你的 Common 类库:

  • ✅ 只包含 C# 代码

  • ✅ 没有使用 DllImport 调用 native 库

  • ✅ 没有引用包含 native 代码的第三方包

  • ✅ 没有使用平台特定的 API(如 Windows Registry)

 那你什么都不用做! 现有的 AnyCPU 版本可以直接在 ARM 上运行。

情况二:Common 类库包含 native 代码

如果你的 Common 类库:

  • ❌ 使用了 DllImport 调用自定义的 C/C++ 库

  • ❌ 依赖了一些需要平台特定编译的第三方 native 库

  • ❌ 包含了针对特定 CPU 优化的算法(如 Intel MKL)

这时才需要为 ARM 单独打包。

如何判断你的库是否包含 native 代码?

检查你的 .csproj 文件或代码中是否有:

csharp
// 是否有这样的代码?
[DllImport("somenative.dll")]
[DllImport("libsomenative.so")]

或者查看依赖的 NuGet 包是否包含 runtimes 文件夹。

情况三:Common 类库依赖了第三方包

场景 A:依赖的包支持 ARM(大多数现代包都支持)

检查你引用的第三方包是否已经支持 ARM。比如在 NuGet.org 上查看包详情,看它是否包含 runtimes/linux-arm64 目录。

如果依赖的包已经支持 ARM,你的 AnyCPU 库在 ARM 上也能正常工作。

场景 B:依赖的包不支持 ARM

如果某个依赖包只有 x64 版本,那你的库在 ARM 上可能会失败。这时你有几个选择:

  1. 寻找替代包:找同样功能但支持 ARM 的包

  2. 联系包作者:请求添加 ARM 支持

  3. 自己打包:为这个依赖包创建 ARM 版本(如果有源码)

 

http://www.jsqmd.com/news/409284/

相关文章:

  • 学术写作神器:9大自动目录生成软件,更新功能全面解析
  • Metasploit实战常见问题排查(10个高频问题,新手必看)
  • 高效论文工具:9款智能目录生成软件,支持实时自动更新
  • 题解:AcWing 883 高斯消元解线性方程组
  • 科研必备:9款论文目录生成工具,智能更新功能全解析
  • 2026最新Java毕设选题大全|零基础可做+源码现成+答辩稳过(软件专业专属)
  • cursor日志0224
  • HWiNFO(硬件检测工具)
  • 图片浏览器 XnViewMP
  • 闪贴键11
  • 中国AI发展趋势深度解读(非常详细),从小白到行业专家,收藏这一篇就够了!
  • 题解:AcWing 204 表达整数的奇怪方式
  • 极度注重隐私的浏览器
  • 未来世界生存指南(非常详细),拥抱AI从入门到精通,收藏这一篇就够了!
  • 题解:AcWing 878 线性同余方程
  • AI应用落地实操指南(非常详细),2026最新路线图,从入门到精通,收藏这一篇就够了!
  • 题解:AcWing 877 扩展欧几里得算法
  • FIQ 与 IRQ
  • Spring AI学习:聊天记忆
  • 题解:AcWing 876 快速幂求逆元
  • Kotlin程序员面试算法宝典【1.6】
  • 题解:AcWing 875 快速幂
  • 2026宜宾搬家优质品牌推荐:日式搬家、特惠搬家、短途搬运、空调移机、设备搬运、跨市搬家、运输公司、钢琴搬运选择指南 - 优质品牌商家
  • ACE Studio 联合 StepFun 开源了音乐生成基础模型 ACE-Step 1.5
  • 智能论文引用工具推荐:六大高效标注方案详解
  • 【完全免费】视频提取音频工具,视频转mp3格式,业界良心!视频一键提取mp3音频格式,操作简单不复杂!
  • RL的几种层次
  • 建筑浮雕优质厂家推荐:外墙eps线条/泡沫浮雕/泡沫浮雕构件/藏式线条/门窗装饰线条/eps欧式线条/选择指南 - 优质品牌商家
  • 信息泄露
  • 大数据与Power BI:开启数据分析新征程