是否可以在没有 Visual Studio 的情况下安装 C# 编译器?

问题描述 投票:0回答:11

我想从命令行构建项目。是否可以在不安装 Visual Studio 的情况下部署 C# 编译器?

c# compiler-construction msbuild csc
11个回答
48
投票

当然,该框架包含一个编译器 csc.exe。请参阅这篇文章,了解快速操作方法。重要部分:

您可以从 Microsoft 站点获取命令行编译器 (csc.exe) http://msdn2.microsoft.com/en-us/netframework/aa731542.aspx.

下载 .NET Framework 的可再发行包,其中包括编译器和支持 C# 2005 语法的 .NET Framework。

编译器位于以下位置 目录: %windir%\Microsoft.NET\Framework\

另请参阅 这篇 MSDN 文章,获取完整的指南和解释。

请注意,对于更新的版本,您将寻找 MSBuild 独立包而不是框架 - 请参阅 @Vadzim 的回答


47
投票

当然。 做:

sudo apt-get install mono-gmcs

其他人都认为是 Windows 和 MS .NET,但是...


35
投票

是的,如果您有 .NET SDK,它就在那里。例如,

C:\WINDOWS\Microsoft.NET\Framework\v[your version number]\csc.exe

msbuild.exe
也应该在那里,您可以使用它来构建项目 (
.csproj
) 文件。


21
投票

与其他一些回答者所说的相反,您不需要 SDK,只需要 .NET Framework 即可获取 C# 编译器,

csc.exe

此外,请考虑其他(免费)IDE,例如 MonoDevelop#developVisual C# Express。 (你说你不需要 Visual Studio,并不是说你根本不需要 IDE;))


14
投票

最新 Microsoft .NET Framework 4.7 不再包含 C# 编译器。

但它可以作为独立 MSBuild 工具的一部分安装。

转到 https://www.visualstudio.com/downloads/,向下滚动到“其他工具和框架”,然后选择“Build Tools for Visual Studio 2017”。

“Visual Studio Build Tools 2017”在线安装程序运行后,切换到“单个组件”选项卡并选中“C# 和 Visual Basic Roslyn 编译器”。 这还将检查 MSBuild 依赖性。总共不到一百兆字节。

编译器安装在

C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\csc.exe


2
投票

是的,甚至还有一个开源的,IDE SharpDevelop。您可以将编译器设置为UltraEdit(或其他一些首选编辑器)中的命令。


1
投票

可以,但需要下载并安装.NET Framework SDK

这里有一个链接可以帮助您。


1
投票

我只是在寻找这样的解决方案,这样我就可以使用 C# 制作小型控制台应用程序。

布莱恩提到了对我有用的方法,我所做的就是在创建文件后简单地执行以下操作:

C:\WINDOWS\Microsoft.NET\Framework\v[your version number]\csc.exe myfile.cs

它将生成您可以使用的 .exe 文件:)


1
投票

您只需要.NET框架。您可以使用记事本进行编辑,并使用CSC.exe进行编译。


0
投票

就像其他一些人提到的那样,MSBuild是随 .NET Framework(版本 2.0 和 3.5)一起部署的,因此如果您安装了其中任何一个,您就可以构建应用程序,而无需在计算机上安装 Visual Studio。


0
投票

其他答案仅描述遗留的闭源 .NET Framework - 对于现代开源 .NET,您可以在

csc
下找到
<SDK location>/Roslyn/bincore/csc.dll
程序集。例如:

asc@ascpixi:~$ dotnet --list-sdks
8.0.107 [/usr/lib/dotnet/sdk]
asc@ascpixi:~$ dotnet exec /usr/lib/dotnet/sdk/8.0.107/Roslyn/bincore/csc.dll -version
4.8.0-7.24225.6 (de75b3c7)

但是,如果您只想从命令行使用

csc
,您可以尝试
dotnet
工具:

dotnet tool install -g csc

...这将允许您将

csc
用作任何其他命令行实用程序。

asc@ascpixi:~$ csc -version
4.8.0-7.24225.6 (de75b3c7)
© www.soinside.com 2019 - 2024. All rights reserved.