Можно ли использовать.NET Core для создания собственных двоичных файлов Linux?
Извиняюсь, если вопрос кажется основным, но я немного погуглил и не смог найти четкого ответа (возможно, я не знаю правильных ключевых слов).
Можно ли использовать.NET Core для создания собственных двоичных файлов Linux для командной строки из источников C# / F#? (Я знаю о моно)
2 ответа
Да, это возможно. Я с этим немного запутался.
dotnet new console
...
dotnet publish -c release -r linux-x64
Или что-то в этом роде... Прошло довольно много времени с тех пор, как я с этим связался, но есть помощь и учебные пособия по работе с dotnet в Linux, и я получил, что он отлично работает на CentOS 7. Конечно, я сделал это на машине с Linux, а не с машины с Windows. Если вы спросите, можете ли вы создать консольное (командное) приложение в Windows для Linux с.NET Core, я не знаю.
AOT — это функция, доступная начиная с dotnet 7.0, хотя у нее есть несколько ограничений , например, в настоящее время она доступна только для консольных приложений, требует обрезки, которая также имеет некоторые ограничения , и не все библиотеки dotnet совместимы с ней (дополнительную информацию см. ссылки).
Включение
Чтобы включить AOT, в вашем.csproj
:
<PropertyGroup>
<!-- enabled aot publishing -->
<PublishAot>true</PublishAot>
<!-- reduces binary size, no debug symbols -->
<StripSymbols>true</StripSymbols>
</PropertyGroup>
Издательский
$ dotnet publish --runtime <RID> --configuration <Debug | Release>
Пример
Привет, мировое приложение, собственный размер двоичного файла и потребление памяти.