Compile/Run macOS 上的单个 C# 文件
Compile/Run single C# file on macOS
我能够通过 VS 为 Mac 开发基于 .NET Core 的 C# 应用程序,现在我创建了一个 "compiler",它为我创建的语言生成 C#。我想要至少 运行 输出(一个名为 Program.cs 的文件)并希望将其编译为 macOS.
上的可执行文件
在 Windows 上,可以通过以下方式完成:
csc /optimize /t:exe /out:Program.exe Program.cs
奇怪的是,这个确切的命令在 macOS 上也同样有效,并生成一个 Windows 可执行文件。我想要的是 mac 可执行文件的等价物。但是,csc documentation 声明唯一的编译器目标是 'library'、'module' 和 Windows 应用程序。
澄清一下,我不想在 运行 时 运行 代码,而是要从 运行 时生成的代码(作为字符串)构建可执行文件时间.
运行 csc
仅当作为构建过程的一部分完成时,或者当 运行 在支持执行 .Net Framework(或 .Net标准)程序集 - 即 Windows 目前,仅适用于琐碎的无依赖代码。
您需要 dotnet new console
创建项目,将您的 Program.cs
放入项目文件夹,然后 dotnet build
将生成可执行文件(在下载必要的 nuget 依赖项等之后)。要共享可执行文件,请使用 dotnet publish -c <configuration> -r <runtime> --self-contained true
(例如 <configuratio>
为 Release
,<runtime>
为 osx-x64
)。
这项技术叫做 .Net Native,它很棒。
如果您使用 OSX,您可以使用终端生成 exe/compile (c#)。你可以关注this post
需要:
- Visual Studio 对于 Mac
- 一个 .cs 文件
- 终端中几行
我能够通过 VS 为 Mac 开发基于 .NET Core 的 C# 应用程序,现在我创建了一个 "compiler",它为我创建的语言生成 C#。我想要至少 运行 输出(一个名为 Program.cs 的文件)并希望将其编译为 macOS.
上的可执行文件在 Windows 上,可以通过以下方式完成:
csc /optimize /t:exe /out:Program.exe Program.cs
奇怪的是,这个确切的命令在 macOS 上也同样有效,并生成一个 Windows 可执行文件。我想要的是 mac 可执行文件的等价物。但是,csc documentation 声明唯一的编译器目标是 'library'、'module' 和 Windows 应用程序。
澄清一下,我不想在 运行 时 运行 代码,而是要从 运行 时生成的代码(作为字符串)构建可执行文件时间.
运行 csc
仅当作为构建过程的一部分完成时,或者当 运行 在支持执行 .Net Framework(或 .Net标准)程序集 - 即 Windows 目前,仅适用于琐碎的无依赖代码。
您需要 dotnet new console
创建项目,将您的 Program.cs
放入项目文件夹,然后 dotnet build
将生成可执行文件(在下载必要的 nuget 依赖项等之后)。要共享可执行文件,请使用 dotnet publish -c <configuration> -r <runtime> --self-contained true
(例如 <configuratio>
为 Release
,<runtime>
为 osx-x64
)。
这项技术叫做 .Net Native,它很棒。
如果您使用 OSX,您可以使用终端生成 exe/compile (c#)。你可以关注this post
需要:
- Visual Studio 对于 Mac
- 一个 .cs 文件
- 终端中几行