龍芯下如何進行.net core程式開發部署

2023-06-12 12:00:30

  2022年4月,基礎的執行時架構程式碼全部通過社群技術評審,。.NET國際開源社群正式宣佈支援LoongArch(龍架構),目前LoongArch64架構已出現在.NET社群主幹分支上。

  .NET 是一個免費的跨平臺開源開發人員平臺,用於生成許多不同型別的應用。使用 .NET,可以使用多種語言、編輯器和庫來構建Web、移動、桌面、遊戲和IoT。此次LoongArch架構得到.NET開源社群原生支援,意味著LoongArch64架構.NET會隨著.NET開源社群同步發展,.NET開發平臺的軟體生態可以原生移植到LoongArch64平臺部署執行,LoongArch生態建設再次邁出堅實一步,為國際開源軟體發展注入中國自主創新源動力

  本文以.NETCore3.1在loongnix-server8.4下部署為例說明開發部署過程。

  .NETCore3.1是基於上游社群.NETCore3.1-LTS-SDK製作的,同樣是LTS版本。

1、在龍芯開源社群下載安裝.net core環境

wget http://ftp.loongnix.cn/dotnet/3.1.11/la64/dotnet-sdk-3.1.11-rc1-loongarch64.rpm

2、環境安裝

rpm:
#安裝:
$sudo rpm -ivh  dotnet-sdk-3.1.11-rc1-loongarch64.rpm
# 檢視安裝結果
$ rpm -qa | grep dotnet
dotnet-sdk-3.1.11-rc1.loongarch64
$ whereis dotnet
dotnet: /usr/bin/dotnet /usr/share/dotnet /usr/share/man/man1/dotnet.1.gz
#解除安裝:
$sudo rpm -e dotnet-sdk-3.1.11-rc1.loongarch64

正常安裝後,設定如下:

[root@localhost opt]# dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.1.111
 Commit:    a9538e031d

Runtime Environment:
 OS Name:     loongnix-server
 OS Version:  8
 OS Platform: Linux
 RID:         linux-loongarch64
 Base Path:   /usr/share/dotnet/sdk/3.1.111/

Host (useful for support):
  Version: 3.1.11
  Commit:  02c4af85c9

.NET Core SDKs installed:
  3.1.111 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.App 3.1.11 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.1.11 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  http://www.loongnix.cn/

Loongson's .NET version:
  3.1.11-rc1

 

3、檢視版本資訊

dotnet --list-sdks
檢視執行時版本:
dotnet --list-runtimes
詳細資訊:
dotnet --info

4、dotnet core程式編譯

直接在windows系統進行通過vs編譯的dotnet core程式,無法指定CPU為龍芯平臺,所以需要將程式在龍芯平臺上編譯才可以進行。將程式拷貝到loongnix-server上,然後重新編譯即可。如果為解決方案專案,直接將整個專案全部拷貝,然後cd到主專案下直接編譯即可,編譯命令如下。

dotnet build

5、編譯成功後,程式在主目錄的/bin/.../下,直接執行即可

dotnet xxxxxx urls http://*:8088

 

相關連結:

龍芯dotnet core的nuget源:https://nuget.loongnix.cn/

龍芯開源社群dotnet core頻道:http://www.loongnix.cn/zh/api/dotnet/

龍芯dotnet core的github開源地址:https://github.com/dotnet/runtime/labels/arch-loongarch64

dotnet core runtime的github地址:https://github.com/dotnet/runtime/tree/main/src/coreclr/vm