Bug 20336 - xbuild script calls version in xbuild/12.0/bin, causes compilation of F# projects to fail
Summary: xbuild script calls version in xbuild/12.0/bin, causes compilation of F# proj...
Status: RESOLVED DOWNSTREAM
Alias: None
Product: Tools
Classification: Mono
Component: xbuild ()
Version: 3.4.0
Hardware: PC Linux
: --- normal
Target Milestone: ---
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2014-06-04 09:32 UTC by robin.neatherway
Modified: 2014-06-06 11:10 UTC (History)
1 user (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on GitHub or Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED DOWNSTREAM

Description robin.neatherway 2014-06-04 09:32:24 UTC
I installed both mono and fsharp from source cloned from the github repos. These were clean installs of the mono-3.4.0 tag and latest fsharp master on a freshly installed Fedora 20 machine.

Since this commit: https://github.com/mono/mono/commit/5e70ba51a0cb57dd878f08f59d0f0718867d5218 the script $PREFIX/bin/xbuild calls in turn $PREFIX/lib/mono/xbuild/12.0/bin/xbuild.exe.

When I try to compile an F# project using any version of mono > 3.2.6 (that includes this commit), I receive the following error:

$ xbuild MyProject.fsproj
error : Error executing tool
    '/home/scratch/local/lib/mono/xbuild/12.0/bin/fsc.exe':
    ApplicationName='/home/scratch/local/lib/mono/xbuild/12.0/bin/fsc.exe',

<snip>

Native error= Cannot find the specified file


but `/home/scratch/local/bin/mono /home/scratch/local/lib/mono/4.5/xbuild.exe MyProject.fsproj` works. Of course, fsc.exe is not found in '/home/scratch/local/lib/mono/xbuild/12.0/bin/', but in the usual place '/home/scratch/local/lib/mono/4.5'.

I noticed that '/home/scratch/local/lib/mono/xbuild/12.0/bin/' contains some broken links of the form:

    Microsoft.Build.dll -> ../gac/Microsoft.Build/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.dll

for many assemblies in the Microsoft.Build namespace and Mono.Xbuild.Tasks.dll. Perhaps this is the cause.

For now I have reverted to using mono 3.2.6.
Comment 1 robin.neatherway 2014-06-06 11:10:14 UTC
After discussion, believed to be the fault of the open source F# installer for installing FSharp.Build.dll in the GAC.

See pull request at https://github.com/fsharp/fsharp/pull/316