2

我正在尝试使用 mono 3 而不是 .net 工具从源代码https://github.com/fsharp/fsharp安装 f# 3.0,因为我有 net 4.0 并且我需要一个 >=4.5 的版本(仅适用于 windows vista 和窗户 8)

当我尝试构建 fsharp-proto-build.proj 时,问题就变成了。我明白了:

MSBUILD : warning MSB4056: Se debe llamar al motor de MSBuild en Singlethread-Apartment. El modelo de subprocesos actual es '"MTA".
basically it's saying than I need change the msbuild engine to singlethread instead mta...I can't found how do this...

当我尝试构建 fsharp-library-build.proj 时,我得到了这个:

 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1360,9):
warning MSB3257: La referencia principal "C:\fsh\fsharp\lib\debug\4.0\FSharp.Core.dll" no se pudo resolver porque su versión es superior "4.3.0.0" a la existente en la versión de .NET Framework de destino actual. La que se encuentra en la versión de .NET Framework de destino actual es "4.0.0.0".

************************************************************************************
I can't understand why is referencing to net framework when I'm using xbuild with mono 3





C:\fsh\fsharp\src\fsharp\FSharp.Data.TypeProviders\TypeProviderEmit.fs(25,49): error FS0039: The type 'TypeProviderEditorHideMethodsAttribute' is not defined

C:\fsh\fsharp\src\fsharp\FSharp.Data.TypeProviders\TypeProviderEmit.fs(25,42): error FS0752: The operator 'expr.[idx]' has been used on an object of indeterminate type based on information prior to this program point. Consider adding further type constraints

C:\fsh\fsharp\src\fsharp\FSharp.Data.TypeProviders\TypeProviderEmit.fs(34,49): error FS0039: The type 'TypeProviderXmlDocAttribute' is not defined

........

2 warning(s)

57 Errors

请帮助我不熟悉.net或单声道工具...谢谢

4

1 回答 1

0

安装 Mono 3.0 后,您应该从开始菜单启动 Mono 命令提示符,然后执行

xbuild参数

否则,xbuild 使用 Microsoft .NET Framework 作为主机。

强烈建议使用 MSBuild 来构建 F#,这就是他们在 README 中所说的(该 readme 文件对于 Windows 案例不是很准确,我可能会在本周末抽出一些时间),

https://github.com/fsharp/fsharp

由于您使用的是 Windows XP,请尝试构建一个干净的盒子,而不安装 Microsoft .NET Framework,然后使用 Mono 和 F#。这应该可以为您节省一些时间,因为您不需要同时与两者作战。

已编辑:目前 Mono 2.10.9 和 3.0.3 都不能在 Windows 上编译 fsharp master。将进一步调查以了解如何编译它。

于 2013-02-04T02:42:44.133 回答