Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails to harvest project outputs if no win32 configuration exists in the solution. #4992

Open
wixbot opened this issue Dec 7, 2015 · 1 comment
Milestone

Comments

@wixbot
Copy link

wixbot commented Dec 7, 2015

We have a solution, in VS 2015, containing several projects, all are built only for x64 platforms.
So, in order to simplify the project configuration in the configuration manager, the Win32 configration has been removed from the solution and all the projects.
After that, the Heat tool is unable to harvest the project outputs. We obtain the following error:

5>heat.exe(0,0): error HEAT5313: Build error during harvesting: C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(55,5): The build tools for Visual Studio 2010 (Platform Toolset = 'v100') cannot be found. To build using the v100 build tools, please install Visual Studio 2010 build tools. Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-click the solution, and then selecting "Retarget solution".5>heat.exe(0,0): error HEAT5307: Build failed.

It seems that Heat looks for the toolset version, in the .vcxproj file, only in the elements defined for the Win32 configuration, and if those elements don't exist in the project, it fails to get it from the elements defined for the x64 configuration.
After adding in all projects a minimal Win32 configuration element, containing at least the and the description, all works fine.

<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <PlatformToolset>v140</PlatformToolset>
</PropertyGroup>

For some projects we also add a to define the target extension (not retrieved from the x64 equivalent property group).

<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <TargetExt>.ocx</TargetExt>
</PropertyGroup>

Should it be possible to have a fix, so we could remove the Win32 configurations (definitively not usefull for us) ? Thank you.

Originally opened by elisabeth.leca

@wixbot
Copy link
Author

wixbot commented Dec 18, 2015

Release changed from v3.10 to v3.x

@wixbot wixbot added this to the v3.x milestone Dec 20, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant