我的编程空间,编程开发者的网络收藏夹
学习永远不晚

国产化之Arm64 CPU+银河麒麟系统安装.NetCore的步骤详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

国产化之Arm64 CPU+银河麒麟系统安装.NetCore的步骤详解

背景

某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,银河麒麟就是一个Linux发行版,数据库使用达梦V8,这个数据库很多概念和Oracle相似,CPU平台的范围:龙芯、飞腾、鲲鹏等。

龙芯团队自己支持了.netcore3.1,飞腾之类的是ARM架构,官方已经支持。.netcore3.1仅在 x64 体系结构上支持包管理器安装,对于 ARM 等其他体系结构,必须通过其他一些方式安装 .NET。

这里就以ARM架构举例,其它CPU平台的安装过程都一样,要下载的包不同而已。

环境

  • 主机操作系统:Windows 10
  • 虚拟化工具:QEMU
  • 虚拟机CPU:cortex-a53(ARMv8架构,支持Arm64)
  • 虚拟机操作系统:银河麒麟 v4

下载

.NET Core 3.1的官方下载地址是这里 :https://dotnet.microsoft.com/en-us/download/dotnet/3.1

因为这里选择ARMv8架构的CPU,所以下载Linux的Arm64版本;如果是x64架构,就选择x64。

如果是龙芯处理器,请前往龙芯官网下载:http://www.loongnix.cn/index.php/Dotnet

怎么上传到服务器?

如果是下载到本地的,可以通过SFTP上传到服务器;如果想在服务器下载,可以通过wget命令直接下载。

安装

x64、Arm处理器

进入安装文件目录,我这里是下载到当前用户的根目录了,所以:

cd ~

执行以下命令,将安装包解压到当前用户根目录的dotnet文件夹下(可以更换路径):

mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-3.1.416-linux-arm64.tar.gz -C $HOME/dotnet

注意:不同平台的安装包名字不一样,要修改成你下载的,比如x64平台下的包是 dotnet-sdk-3.1.416-linux-x64.tar.gz 。

然后还需要将dotnet导出到环境变量PATH中,编辑文件 /etc/profile ,在最后添加以下两句:

export PATH=$PATH:$HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet

然后执行命令:source /etc/profile,让配置生效。

看看dotnet是否安装成功了,执行命令:dotnet –info ,正常应该显示如下:

MIPS、龙芯处理器

因为没有龙芯处理器,这块只能干说了,因为银河麒麟是Debian系的,所以下载那个deb包,直接命令安装就行了。

sudo apt install ./dotnet-sdk-3.1.11-rc1_loongarch64.deb 

安装完成之后,也通过 dotnet –info 看一下结果。

其它依赖

如果依赖System.Drawing.Common 程序集,还需要 libgdiplus 6.0.1或更高版本,这个是mono提供的,如果你的CPU平台是arm64或者x64,可以在下面的链接下载这个包,上传到服务器上进行安装:

链接: https://pan.baidu.com/s/123diseEAwfpX-012YqhssA?pwd=n4yb 
提取码: n4yb 

x64平台这样安装:

sudo apt install ./libgif7_5.1.4-0.3~16.04.1_amd64.deb
sudo apt install ./libgdiplus_6.0.5-0xamarin1+ubuntu1604b1_amd64.deb

arm64平台:

sudo apt install ./libgif7_5.1.4-0.3~16.04.1_arm64.deb
sudo apt install ./libgdiplus_6.0.5-0xamarin1+ubuntu1604b1_arm64.deb

如果你是其它CPU平台的,可以参考mono项目的这篇文章:

https://www.mono-project.com/download/stable/

针对这个问题,官方在.NET6中已经放弃了System.Drawing.Common的跨平台属性,也许更好的办法是使用其它图形库代替它,比如:SkiaSharp、Microsoft.Maui.Graphics、ImageSharp 。

测试

依次执行以下命令:创建一个目录 dotnetsample,然后创建一个web项目,最后运行这个项目。

cd ~
mkdir dotnetsample
cd ./dotnetsample
dotnet new web
dotnet run --urls=http://*:5000

在浏览器中访问,显示如下结果:

如果走到这一步,那么恭喜你,安装成功了!

到此这篇关于国产化之Arm64 CPU+银河麒麟系统安装.NetCore的文章就介绍到这了,更多相关银河麒麟系统安装.NetCore内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

国产化之Arm64 CPU+银河麒麟系统安装.NetCore的步骤详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录