[MonoDevelop] Build fails where Add Reference to Project

Andres G. Aragoneses knocte at gmail.com
Sun Jan 20 12:37:11 UTC 2013


Can you do a small test in Visual Studio, creating 2 simple projects, 
one depending on each other? The compilation then would obviously not 
fail within VS, but the key thing to do would be to compare the .csproj 
files generated by VS and the ones generated by MD: if the propertyGroup 
elements are created differently, I guess that is the bug that needs 
fixing in MonoDevelop.


On 20/01/13 12:19, Alberto León wrote:
> More information about this.
> When I create a Library project, I can't choose platform for compilation
> target.
>
> So I think this is the big reason that the project A is looking in first
> PropertyGroup.
> But the .csproj has the three blocks
>
>
> 2013/1/20 Alberto León <leontiscar at gmail.com <mailto:leontiscar at gmail.com>>
>
>     The fail appears in Linux Mint. I check it in:
>     Mono 2.10.8.1 + MonoDevelop 2.8.6.3, from packages
>     Mono 3.0.3 + MonoDevelop 3.0.5,from sources installed in parallel
>     environment
>
>     I see the problem appears only because when you Compile Project A,
>     that has a reference to Project B, it uses Proyect B first
>     PropertyGroup configuration, not debug configuration. In this
>     configuration OutputPath doesn't appear.
>
>     This is the xml of the .csproj that fails. If I copy OutputPath from
>     Debug PropertyGroup Configuration, to the first block the
>     compilation success correctly
>
>     <?xml version="1.0" encoding="utf-8"?>
>     <Project DefaultTargets="Build" ToolsVersion="4.0"
>     xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
>        <PropertyGroup>
>          <Configuration Condition=" '$(Configuration)' == ''
>     ">Debug</Configuration>
>          <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
>          <ProductVersion>10.0.0</ProductVersion>
>          <SchemaVersion>2.0</SchemaVersion>
>          <ProjectGuid>{046A80F4-E5EA-4E99-B45D-40A71E173067}</ProjectGuid>
>          <OutputType>Library</OutputType>
>          <RootNamespace>MiProyecto.Core</RootNamespace>
>          <AssemblyName>MiProyecto.Core</AssemblyName>
>        </PropertyGroup>
>        <PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==
>     'Debug|AnyCPU' ">
>          <DebugSymbols>true</DebugSymbols>
>          <DebugType>full</DebugType>
>          <Optimize>false</Optimize>
>          <OutputPath>bin\Debug</OutputPath>
>          <DefineConstants>DEBUG;</DefineConstants>
>          <ErrorReport>prompt</ErrorReport>
>          <WarningLevel>4</WarningLevel>
>          <ConsolePause>false</ConsolePause>
>        </PropertyGroup>
>        <PropertyGroup Condition=" '$(Configuration)|$(Platform)' ==
>     'Release|AnyCPU' ">
>          <DebugType>none</DebugType>
>          <Optimize>false</Optimize>
>          <OutputPath>bin\Release</OutputPath>
>          <ErrorReport>prompt</ErrorReport>
>          <WarningLevel>4</WarningLevel>
>          <ConsolePause>false</ConsolePause>
>        </PropertyGroup>
>        <ItemGroup>
>          <Reference Include="System" />
>        </ItemGroup>
>        <ItemGroup>
>          <Compile Include="MyClass.cs" />
>          <Compile Include="AssemblyInfo.cs" />
>        </ItemGroup>
>        <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
>     </Project>
>
>
>
>
>     2013/1/20 Michael Hutchinson <m.j.hutchinson at gmail.com
>     <mailto:m.j.hutchinson at gmail.com>>
>
>         It looks like you're using the experimental MSBuild build
>         engine, try disabling it.
>
>         I suspect this is a bug with building heterogeneous solution
>         configurations (e.g. solution config "Debug|x86" mapped to the
>         "Debug|AnyCPU" project configuration) with the MSBuild engine
>         that was fixed in MD a while back, what MD version are you using?
>
>         On Jan 17, 2013 5:21 PM, "Alberto León" <leontiscar at gmail.com
>         <mailto:leontiscar at gmail.com>> wrote:
>
>             I tried compile projects separately, and all builds without
>             problems.
>
>             But when I reference a project, and do build, MonoDevelop
>             shows an error  'OutputPath' property is not set for this
>             project
>
>
>
>             Construyendo: hola (Debug)
>
>             Realizando compilación principal...
>
>             Build started 17/01/2013 23:17:01.
>             __________________________________________________
>             Project "/home/alberto/MonoSimpleInstall/hola/hola.csproj"
>             (Build target(s)):
>             Target PrepareForBuild:
>             Configuration: Debug Platform: AnyCPU
>             Target GenerateSatelliteAssemblies:
>             No input files were specified for target
>             GenerateSatelliteAssemblies, skipping.
>             Target CoreCompile:
>             Tool /usr/bin/gmcs execution started with arguments:
>             /noconfig /debug:full /debug+ /optimize-
>             /out:obj/Debug/hola.dll MyClass.cs AssemblyInfo.cs
>             /target:library /define:DEBUG
>             /reference:/usr/lib/mono/2.0/System.dll /warn:4
>             Target DeployOutputFiles:
>             Copying file from
>             '/home/alberto/MonoSimpleInstall/hola/obj/Debug/hola.dll.mdb' to
>             '/home/alberto/MonoSimpleInstall/hola/bin/Debug/hola.dll.mdb'
>             Copying file from
>             '/home/alberto/MonoSimpleInstall/hola/obj/Debug/hola.dll' to
>             '/home/alberto/MonoSimpleInstall/hola/bin/Debug/hola.dll'
>             Done building project
>             "/home/alberto/MonoSimpleInstall/hola/hola.csproj".
>
>             Build succeeded.
>             0 Warning(s)
>             0 Error(s)
>
>             Time Elapsed 00:00:00.6061730
>             Construcción finalizada -- 0 errores, 0 advertencias
>
>             Construyendo: MonoSimpleInstallConsole (Debug|x86)
>
>             Realizando compilación principal...
>
>             Build started 17/01/2013 23:17:02.
>             __________________________________________________
>             Project
>             "/home/alberto/MonoSimpleInstall/MonoSimpleInstallConsole/MonoSimpleInstallConsole.csproj"
>             (Build target(s)):
>             Target PrepareForBuild:
>             Configuration: Debug Platform: x86
>             Target ResolveProjectReferences:
>             Project "/home/alberto/MonoSimpleInstall/hola/hola.csproj"
>             (GetTargetPath target(s)):
>             Target _ValidateEssentialProperties:
>             /usr/lib/mono/4.0/Microsoft.Common.targets: error :
>             'OutputPath' property is not set for this project. Usually
>             this is caused by invalid Configuration/Platform
>             combination. Original values: Configuration: Debug Platform:
>             x86.
>             Task "Error" execution -- FAILED
>             Done building target "_ValidateEssentialProperties" in
>             project
>             "/home/alberto/MonoSimpleInstall/hola/hola.csproj".-- FAILED
>             Done building project
>             "/home/alberto/MonoSimpleInstall/hola/hola.csproj".-- FAILED
>             Task "MSBuild" execution -- FAILED
>             Done building target "ResolveProjectReferences" in project
>             "/home/alberto/MonoSimpleInstall/MonoSimpleInstallConsole/MonoSimpleInstallConsole.csproj".--
>             FAILED
>             Done building project
>             "/home/alberto/MonoSimpleInstall/MonoSimpleInstallConsole/MonoSimpleInstallConsole.csproj".--
>             FAILED
>
>             Build FAILED.
>             Errors:
>
>             /home/alberto/MonoSimpleInstall/MonoSimpleInstallConsole/MonoSimpleInstallConsole.csproj
>             (Build) ->
>             /usr/lib/mono/4.0/Microsoft.Common.targets
>             (ResolveProjectReferences target) ->
>             /home/alberto/MonoSimpleInstall/hola/hola.csproj
>             (GetTargetPath) ->
>             /usr/lib/mono/4.0/Microsoft.Common.targets
>             (_ValidateEssentialProperties target) ->
>
>             /usr/lib/mono/4.0/Microsoft.Common.targets: error :
>             'OutputPath' property is not set for this project. Usually
>             this is caused by invalid Configuration/Platform
>             combination. Original values: Configuration: Debug Platform:
>             x86.
>
>             0 Warning(s)
>             1 Error(s)
>
>             Time Elapsed 00:00:00.1621860
>             Construcción finalizada -- 1 error, 0 advertencias
>
>             ---------------------- Hecho ---------------------
>
>             Construcción: 1 error, 0 advertencias
>
>
>             --
>
>             http://stackoverflow.com/users/690958/alberto-leon
>
>             _______________________________________________
>             Monodevelop-list mailing list
>             Monodevelop-list at lists.ximian.com
>             <mailto:Monodevelop-list at lists.ximian.com>
>             http://lists.ximian.com/mailman/listinfo/monodevelop-list
>
>
>
>
>     --
>
>     http://stackoverflow.com/users/690958/alberto-leon
>
>
>
>
> --
>
> http://stackoverflow.com/users/690958/alberto-leon
>
>
> _______________________________________________
> Monodevelop-list mailing list
> Monodevelop-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/monodevelop-list
>




More information about the Monodevelop-list mailing list