dotnet / msbuild

The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio.
https://docs.microsoft.com/visualstudio/msbuild/msbuild
MIT License
5.17k stars 1.34k forks source link

Incorrect assembly version resolution under Mono 5.0 #2208

Open Nihlus opened 7 years ago

Nihlus commented 7 years ago

When using MSBuild under Mono 5.0.1.1, it fails to correctly resolve assemby references for gtk-sharp (version 2.12). There are two versions installed into the GAC (2.12 and 3.0), and MSBuild does not select 2.12 for a project which references it. Instead, it arbitrarily picks 3.0.

xbuild does not have this problem, and correctly resolves the assembly.

This causes projects which use GTK#2 to not be able to be built with MSBuild. An example of an affected project can be examined here: https://github.com/Nihlus/Launchpad

-- System Info

Linux Mint 18.1 Cinnamon Edition Mono 5.0.1.1 (Xamarin release via repository) MSBuild 15.2.0.0 xbuild 14.0 libgtk2.0-cil (2.12.43-0xamarin7+debian7b1)

radical commented 7 years ago

Could you run msbuild with /fl /flp:v=diag and share the generated msbuild.log? Ensure that you build from a clean state.

Nihlus commented 7 years ago

Certainly. Here you go. msbuild.log.txt

Nihlus commented 6 years ago

I am still experiencing this issue. Have there been any updates?