Эльбрус/dotnet
< Эльбрус
Net Core 3.1
- Получите SDK у МЦСТ.
- Распакуйте содержимое в /opt/mcst/dotnet
- Установите переменную окружения к dotnet: export PATH=/opt/mcst/dotnet:$PATH
- Отключаем проверку сокетов (нужно для работы NuGet): export DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0
- Отключаем ETW, если не нужно трассирование и счётчики перформанса: export COMPlus_EnableDiagnostics=0
Проверяем:
:~$ dotnet --info Пакет SDK для .NET Core (отражающий любой global.json): Version: 3.1.114-1.8.7 Commit: fb987199d2 Среда выполнения: OS Name: elbrus OS Version: 7 OS Platform: Linux RID: linux-e2k Base Path: /opt/mcst/dotnet/sdk/3.1.114/ Host (useful for support): Version: 3.1.12 Commit: 826c2c2f8f .NET Core SDKs installed: 3.1.114 [/opt/mcst/dotnet/sdk] .NET Core runtimes installed: Microsoft.AspNetCore.App 3.1.14 [/opt/mcst/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.14 [/opt/mcst/dotnet/shared/Microsoft.NETCore.App] To install additional .NET Core runtimes or SDKs: https://aka.ms/dotnet-download Проблема: * Нужно собирать нативные .so зависимости и размещать в runtime/native/<rid> * Пока нет понятия E2K в рантайме и типах.ALT
По состоянию на начало апреля 2022 года можно установить пакет dotnet-bootstrap-3.1 из sisyphus_e2k либо p10_e2k: # apt-get install dotnet-bootstrap-3.1 и далее: $ export PATH=/usr/lib64/dotnet-bootstrap-3.1:$PATH DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0 COMPlus_EnableDiagnostics=0 $ dotnet --info (работу с переменными можно занести в ~/.bashrc или в настройки шелла по вкусу)Пример правки .bashrc
Можно добавить в файл ~/.bashrc путь к dotnet через переменную DOTNET_ROOT, которая потребуется при запуске не self-contained приложений: DOTNET_ROOT="/opt/mcst/dotnet" PATH=$PATH:$DOTNET_ROOT DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0 export DOTNET_ROOT PATH DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER