【发布时间】:2012-10-24 19:28:52
【问题描述】:
我有一个适用于 VS2010 的解决方案,其中包括一些针对 F# 2.0 编译器/SDK、利用 fparsec 和 fsharp powerpack 的 F# 项目。
然后我将我的主要开发机器升级到VS2012,加载了解决方案并且能够正常编译。
但是,我刚刚用 Windows 8 和 VS2012 重新铺设了一台单独的机器,在该机器上加载解决方案会导致编译失败,因为该项目的目标是 F# 3.0,并且 fparsec/fsharp powerpack 似乎不再编译了。
是否可以在这台新的 windows 8 机器上安装 FSharp 2.0 SDK(如果是,我从哪里获得它?)并获得重新编译的解决方案,或者我需要做其他事情来获得这个在新旧机器上工作?
2012 年 10 月 25 日更新
重新启动 VS2012 后编译现在可以工作,但是在执行代码时,我遇到了与我的 F# 代码相关的意外错误:
Method not found: 'ParserResult`2<!!0,Microsoft.FSharp.Core.Unit> FParsec.CharParsers.run(
Microsoft.FSharp.Core.FSharpFunc`2<FParsec.CharStream`1<Microsoft.FSharp.Core.Unit>,
FParsec.Reply`1<!!0>>, System.String)'.
在首先使用 F# 安装 VS2010 然后升级到 vs2012 的机器上编译/执行相同的代码时不会发生这种情况 - 仅在仅安装了 vs2012 的机器上发生。
有什么想法吗?
【问题讨论】:
-
看起来我的新问题与此处记录的问题相同:bitbucket.org/riles01/fparsec/issue/1/… 将尝试绑定重定向并确认是否可以解决问题。猜猜从VS2010升级的环境是否已经在GAC中安装了F# 2.0核心库?
-
请注意,NuGet 包当前不包含最新版本的 FParsec。如果您在使用 NuGet 包时遇到问题,请从bitbucket.org/fparsec/main/overview 尝试最新版本的 FParsec,如果仍然有问题,请提交工单。
标签: visual-studio-2010 f# visual-studio-2012 fparsec