Эльбрус/dotnet: различия между версиями
< Эльбрус
Нет описания правки |
Tora-bora (обсуждение | вклад) (→Net Core 3.1: RID теперь linux-e2k) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 13: | Строка 13: | ||
Пакет SDK для .NET Core (отражающий любой global.json): | Пакет SDK для .NET Core (отражающий любой global.json): | ||
Version: 3.1.114 | Version: 3.1.114-1.8.7 | ||
Commit: | Commit: fb987199d2 | ||
Среда выполнения: | Среда выполнения: | ||
OS Name: elbrus | OS Name: elbrus | ||
OS Version: | OS Version: 7 | ||
OS Platform: Linux | OS Platform: Linux | ||
RID: | RID: linux-e2k | ||
Base Path: /opt/mcst/dotnet/sdk/3.1.114/ | Base Path: /opt/mcst/dotnet/sdk/3.1.114/ | ||
Host (useful for support): | Host (useful for support): | ||
Version: 3.1.12 | Version: 3.1.12 | ||
Commit: | Commit: 826c2c2f8f | ||
.NET Core SDKs installed: | .NET Core SDKs installed: | ||
Строка 36: | Строка 36: | ||
To install additional .NET Core runtimes or SDKs: | To install additional .NET Core runtimes or SDKs: | ||
https://aka.ms/dotnet-download | https://aka.ms/dotnet-download | ||
Проблема: | Проблема: | ||
* Нужно собирать нативные .so зависимости и размещать в runtime/native/<rid> | * Нужно собирать нативные .so зависимости и размещать в runtime/native/<rid> | ||
* Пока нет понятия E2K в рантайме и типах. | * Пока нет понятия E2K в рантайме и типах. | ||
Строка 81: | Строка 55: | ||
(работу с переменными можно занести в ~/.bashrc или в настройки шелла по вкусу) | (работу с переменными можно занести в ~/.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 | |||
{{Category navigation|title=E2K|category=E2K|sortkey=*}} | {{Category navigation|title=E2K|category=E2K|sortkey=*}} |
Текущая версия от 15:41, 12 декабря 2022
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