[Mono-dev] Microsoft.Build: The parameter 'FrameworkVersion45Path' was not found for the 'GetFrameworkPath' task

Robin Neatherway robin.neatherway at gmail.com
Wed Jan 30 19:27:50 UTC 2013


Hi,

I'm trying to execute the ResolveAssemblyReferences task using the
Microsoft.Build namespace. This (F#) project builds nicely from the command
line using xbuild, so the logic is capable. The project file can be found
here:
https://github.com/fsharp/fsharpbinding/blob/master/FSharp.AutoComplete/FSharp.AutoComplete.fsproj
and
has TargetFrameworkVersion set to 4.5. If I change TargetFrameworkVersion
to 4.0, it works.

I downloaded mono from github and am running the latest version: Mono JIT
compiler version 3.0.4 (master/e5fba9d Wed Jan 30 18:38:48 GMT 2013). I
also tried with 3.0.3, with the same effect.

The following fsi script is what I am using:

#r "Microsoft.Build.Engine"
#r "Microsoft.Build.Framework"
#r "Microsoft.Build.Tasks.v4.0"
open Microsoft.Build.BuildEngine
open Microsoft.Build.Framework
open Microsoft.Build.Tasks

let p = new Project()
let cl = new ConsoleLogger(LoggerVerbosity.Diagnostic)
p.ParentEngine.RegisterLogger(cl)
p.Load("FSharp.AutoComplete.fsproj")

p.Build([|"ResolveAssemblyReferences"|])

which results in:

<path>/FSharp.AutoComplete.fsproj (ResolveAssemblyReferences) ->
/home/scratch/local_mono/lib/mono/4.0/Microsoft.Common.targets
(GetFrameworkPaths target) ->

/home/scratch/local_mono/lib/mono/4.0/Microsoft.Common.targets: error :
Error executing task GetFrameworkPath: The parameter
'FrameworkVersion45Path' was not found for the 'GetFrameworkPath' task.

I found that the framework path for 4.5 doesn't seem to be defined:

let gfp = GetFrameworkPath()
gfp.FrameworkVersion45Path

error FS0039: The field, constructor or member 'FrameworkVersion45Path' is
not defined

Although in
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/GetFrameworkPath.cs
has a #if NET_4_5 around FrameworkVersion45Path, and .NET 4.5 is definitely
enabled in the configure script, and I have a fully populated lib/mono/4.5
directory.

I also found that the Engine toolsets do not include 4.5. I tried adding it
manually, but this didn't help.

I think this is a bug, and would appreciate any hints in tracking it down.

Thanks,
Robin Neatherway
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20130130/7e950d1c/attachment.html>


More information about the Mono-devel-list mailing list