我可以在没有Visual Studio的情况下编译DLL吗?

我的目的是使用C ++库 ,使用SWIG ( alt。链接 )将其包装为C#,并将C ++和C#组件编译为Unity 5的DLL。(C#DLL为Unity提供了与C ++ DLL的接口。)

据我所知,编译C ++和C#DLL总是需要Visual Studio(或VS之类的msbuild工具)。 但是,我目前正在努力安装VS,这让我质疑这个假设。

是否还有其他选项可以在Windows上编译Unity-ready DLL?

(即使我安装了VS,我仍然很想知道。)

是的,您可以使用MinGW从命令行将C ++编译为DLL 。

如果您更喜欢GUI界面,可以尝试Code :: Blocks 。 它附带了MinGW的调整版本,但由于它是基于GUI的IDE,因此您无需直接与它进行交互:)

但是,您仍然需要将swig包装的代码放入C#DLL中。 我会调查MonoDevelop是否能实现这一目标。

编辑:刚刚看到ReCoF的答案 – 看来你可以使用MonoDevelop进行C#方面的事情,所以你很高兴去:)

您可以下载独立版本的MSBuild并使用它来编译代码,您不需要VS。

这里有一个演练:

 msbuild buildapp.csproj /t:HelloWorld 

使用命令行工具,如csc (C# Compler) ,他们有一切可以完成这项工作,你不需要任何其他东西,请查看链接 。

您只需安装.Net框架即可使编译器无需VS或任何其他工具。 它为VS提供的每个选项都有一个开关。

如果您需要assembly链接,请使用assembly链接器工具链接 。

在ILMerge上也检查以下链接

您还可以使用MonoDevelop编译项目。 您只需选择发布模式而不是调试模式。