国产化之 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

img

因为这里选择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 ,正常应该显示如下:

img

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/1WYIbxqh8OPTHBJWZoWafHw?pwd=pr4q

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的跨平台属性,也许更好的办法是使用其它图形库代替它,比如:SkiaSharpMicrosoft.Maui.GraphicsImageSharp

测试

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

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

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

img

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

收获更多架构知识,请关注微信公众号 萤火架构。原创内容,转载请注明出处。

要在麒麟V10上进行离线部署.NET Core,需要按照以下步骤进行: 1. 在联网的Windows机器上下载.NET Core运行时和SDK的离线安装程序。可以从以下链接下载: - .NET Core 运行时 https://dotnet.microsoft.com/download/dotnet/3.1/runtime - .NET Core SDK https://dotnet.microsoft.com/download/dotnet/3.1 注意:必须下载与麒麟V10相同版本的.NET Core运行时和SDK。 2. 将下载的离线安装程序复制到麒麟V10服务器上的任意位置。 3. 在麒麟V10服务器上运行以下命令以安装.NET Core运行时: ``` sudo mkdir /opt/dotnet sudo tar -xvzf /path/to/downloaded/dotnet-runtime-3.1.0-linux-x64.tar.gz -C /opt/dotnet/ ``` 注意:替换`/path/to/downloaded`为您下载的离线安装程序的路径。 4. 在麒麟V10服务器上运行以下命令以安装.NET Core SDK: ``` sudo mkdir /opt/dotnet-sdk sudo tar -xvzf /path/to/downloaded/dotnet-sdk-3.1.0-linux-x64.tar.gz -C /opt/dotnet-sdk/ ``` 注意:替换`/path/to/downloaded`为您下载的离线安装程序的路径。 5. 添加.NET Core系统环境变量中。使用以下命令打开`/etc/profile`文件: ``` sudo nano /etc/profile ``` 在文件末尾添加以下行: ``` export PATH=$PATH:/opt/dotnet:/opt/dotnet-sdk ``` 按下`Ctrl + X`,然后输入`Y`保存并退出。 6. 重新加载配置文件: ``` source /etc/profile ``` 7. 检查.NET Core是否已正确安装: ``` dotnet --info ``` 如果一切正常,将显示.NET Core的版本信息。 现在,您已经在麒麟V10服务器上成功离线部署.NET Core
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值