Ming
Ming

Reputation: 141

msbuild Wix toolset 3.7 source code in VS2012

I am trying to manually build the wix toolset 3.7 on a windows 8 machine that has VS2012 installed, but I keep on running into the following error:

error WIXBUILD002: Error the "Microsoft Windows SDK for Windows 7 and .NET Frame 4" or "Visual Studio 2012" must be installer.

According to the wix documentation http://wixtoolset.org/documentation/manual/v3/wixdev/building_wix.html

it should work when the command: msbuild /p:VisualStudioVersion="11.0" is used.

Any help would be greatly appreciated.

EDIT:

By changing the <PlatformSdkInstallPath> in the WixBuild.props file from 8.0 to 8.0A WIXBUILD002 error is solved. But, now I am get about 72 errors, mostly related to the MSBUILD

error MSB8020: The build tools for Visual Studio 2010
(Platform Toolset = 'v100') cannot be found. To build
using the v100 build tools, either click the project
menu or right-click on the solution, and then select
"Update VC++ Projects..."

Upvotes: 1

Views: 1102

Answers (2)

23r0c001
23r0c001

Reputation: 161

This is a very old post, but in case anyone new runs into this, this happened to me trying to build the WiX 3.14 burn solution and I fixed it by installing Windows SDK 10.0.17134.0, and .NET Framework 4. I'm using Visual Studio 2017.

Upvotes: 0

RinoTom
RinoTom

Reputation: 2326

As I went through the WIX build targets, the definition for Error WIXBUILD002 is in the file \tools\WixBuild.Tools.targets. That happens if a file path as per the property PlatformSdkBinPath is not present or if the property is having empty value. The value of PlatformSdkBinPath is set in the file \tools\WixBuild.props as $(PlatformSdkInstallPath)bin\ and PlatformSdkInstallPath in turn is having its value read from registry entry HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0. Apparently in your machine there is no registry entry like that and instead it is v8.0A.

The issue is that, WIX MSBuild is not able to locate Windows SDK in your machine. Most probably it can be bug in WIX source as well.

So, basically the solution is that to change the registry key path (only HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0) in the files \tools\WixBuild.props (PlatformSdkInstallPath property) and \tools\OneTimeWixBuildInitialization.proj (NetfxSdkInstallPath property) to end with v8.0A instead of current v8.0 and to have a try on MSBuild.

EDIT:

To address this issue of:

MSB8020: The build tools for Visual Studio 2010 (Platform Toolset = 'v100') cannot be found. To build using the v100 build tools, either click the project menu or right-click on the solution, and then select "Update VC++ Projects..."

you can refer to the solution available for this MSDN post I think. The solution here basically is to install Windows Driver Kit 8.

Note: I feel like your VS 2012 installation has some basic issues or else the flavor\version of VS 2012 you are using is missing a lot of things.

Upvotes: 1

Related Questions