我在 linux 上安装了 mono 2.10.4,并且一直在尝试编译一个 .NET C# 4 依赖代码库。我已经能够在 MonoDevelop 中进行编译,但是需要能够从命令行/构建工具中进行。
执行:
gmcs -langversion:4 -target:library -out:foo.dll ... <sources>
产生以下错误:
error CS1617: Invalid -langversion option `4'. It must be `ISO-1', `ISO-2', `3'
or `Default'
编译器版本
gmcs --version
:Mono C# compiler version 2.10.4.0
补充说明:
最佳答案
我想你想跑 dmcs
而不是 gmcs
.来自 CSharp Compiler page :
Starting with Mono version 2.6 a new compiler dmcs is available as a preview of C# 4.0 (a preview since Mono 2.6 will ship before C# 4.0 is finalized).
(这有点过时了,因为我现在运行的是 2.10.5.0,但没关系。)
编辑:替代方案,使用
mcs
as specified here ,因为您正在运行 2.10。它不支持特定的
-langversion
4 个,但 Microsoft 编译器也没有:/langversion:<string> Specify language version mode: ISO-1, ISO-2, 3, or Default
关于.net - 我如何使用单声道 objective-c #/.net 4 进行编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7616438/