FSharp.Core适用于Windows Phone 7.1和F# 3.0。

16

F# 2.0发布时有一个为WindowsPhone7.1/Silverlight4编译的FSharp.Core版本,但F# 3.0没有,可移植版本仅支持Silverlight 5或Windows Phone 8。是否有人能够从源代码中编译出针对Silverlight 4或Windows Phone 7.1的F# 3.0版FSharp.Core?需要哪些定义?

编辑:

在fsharp编译器GitHub存储库上,有一个名为portable-net4+sl4+wp71+win8的目标,但实际上这是可移植类库Profile47,据说只支持.NET 4.5、Silverlight 5.0和Windows商店应用程序。它与VS2012安装的相同。如果你试图将其用于WP 7.1项目,它将在运行时失败,抱怨缺少IStructuralEquatable。它应该真正被命名为portable-net45+sl5+win8。在proj文件中也有wp7目标,但目前无法编译。

2个回答

3

我已经成功编译了它,但由于我通常不使用F#,所以我不知道如何测试它。您是否按照编译的说明进行操作?只需在VS Developer提示符中键入以下命令即可:

cd src
msbuild fsharp-proto-build.proj
msbuild fsharp-library-build.proj
msbuild fsharp-compiler-build.proj
msbuild fsharp-library-build.proj /p:TargetFramework=portable-net4+sl4+wp71+win8

请注意,我是使用Visual Studio 2012 Professional完成此操作的。如果您愿意,我可以发送已编译的dll文件,您可以尝试使用它。

尽管在fsharp编译器项目文件中标记为portable-net4+sl4+wp71+win8,但它实际上是Profile47,在wp71中无法工作,运行时会抱怨缺少IStructuralEquatable。它应该真正被命名为portable-net45+sl5+win8。在proj文件中还有一个wp7目标,但它目前由于重复的mscorlib引用而失败。 - Gustavo Guerra
啊,我的错。我会在周末看看我能做些什么。 - Toni Petrina

1

在对 F# 源代码进行一些更改后,我已经成功编译了 wp7 和 Portable88 的目标。链接

尽管如此,仍需要彻底测试运行时。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接