user156888
user156888

Reputation:

Building SLN on mono / Ubuntu

I am trying to build my SLN on Ubuntu using Mono / xbuild

I started getting errors related to webapplication.targets missing and thought I'd fixed that by adding a simlink as in Webapplication.targets missing when building a MVC4 project in MonoDevelop on OS X 10.7.4

But now I get errors related to : error : Error initializing task Error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies.

Are there any special steps I need to take to make this work? Do I need a specific version of Mono?

[UPDATE]

It seems this is an issue with the Nuget step:

azureuser@scratchpad:~/test-api/src/Model$ xbuild Model.csproj
XBuild Engine Version 12.0
Mono, Version 3.2.8.0
Copyright (C) 2005-2013 Various Mono authors

Build started 8/4/2014 11:29:09 AM.
__________________________________________________
Project "/home/azureuser/test-api/src/Model/Model.csproj" (default target(s)):
        Target EnsureNuGetPackageBuildImports:
: error : Error initializing task Error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the file specif
ied.
        Task "Error" execution -- FAILED
        Done building target "EnsureNuGetPackageBuildImports" in project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED
        Target _RecordCleanFile:
: error : Error initializing task ReadLinesFromFile: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the
 file specified.
        Task "ReadLinesFromFile" execution -- FAILED
        Done building target "_RecordCleanFile" in project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED
Done building project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED

Build FAILED.
Errors:

/home/azureuser/test-api/src/Model/Model.csproj (default targets) ->
(EnsureNuGetPackageBuildImports target) ->

        : error : Error initializing task Error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the fil
e specified.

/home/azureuser/test-api/src/Model/Model.csproj (default targets) ->
/usr/lib/mono/4.5/Microsoft.Common.targets (_RecordCleanFile target) ->

        : error : Error initializing task ReadLinesFromFile: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot
find the file specified.

         0 Warning(s)
         2 Error(s)

Time Elapsed 00:00:00.3989900

Upvotes: 6

Views: 7828

Answers (1)

Jan Hnila
Jan Hnila

Reputation: 146

I ran into the same issue, on Debian Jessie. The "hint" by knocte was right. The 3.2.8 version of mono is not enough. I installed the newest version following the instructions on the mono-project site and it works.

So, I did:

#add the Mono Project GPG signing key as trusted
apt-key adv --keyserver pgp.mit.edu --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

#add their pacages repository to apt sources
echo "deb http://download.mono-project.com/repo/debian wheezy main" > /etc/apt/sources.list.d/mono-xamarin.list

#refresh package list
apt-get update

#install newer mono & friends
apt-get install mono-devel

and then, the my previously failed xbuild, worked.

mono --version
    3.10.0 
xbuild /version 
   XBuild Engine Version 12.0

Upvotes: 12

Related Questions