Friday, February 12, 2016

Visual Studio 2015 - and GNU Make : Path is truncated, while PATH is complete!


Quick view:

Not sure why, but I have 2 path variables: Path and PATH.
PATH is complete and shows no problem.
Path is trimmed after ...Common7\IDE because of the trailing\


Details:
Just a quick note for who may encounter this problem with your bat files when you used to build your program under Visual Studio 2003 2005 2008 or 2010, and start using Visual Studio 2015.

I use a bat script with these 2 lines:
call "%VS140COMNTOOLS%\vsvars32.bat"
make bin

I call GNU make , a windows binary version of it (installed by Unix For Windows: C:\Program Files\unixforwindows\usr\local\wbin\make.exe )

It shows this environment from the Windows command "set" I've put in the Makefile:

Path=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86
)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE(STOPS HERE)

PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files (x86
)\MSBuild\14.0\bin;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C
:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\VCPackages;etc...


You can see the Path (used by GNU Make) is truncated. PATH (used by other windows tools) is ok.

Problem is this line in :%VS140COMNTOOLS%\vsvars32.bat
@set DevEnvDir=%VSINSTALLDIR%Common7\IDE\


I needed to remove the trailing \ :
@set DevEnvDir=%VSINSTALLDIR%Common7\IDE



Visual Studio 2015 - Win32 release is now wrong / Release changed from Win32 to x86




When this used to work just fine with Microsoft Visual Studio 2003, 2005, 2008 or 2010:
call "%VS90COMNTOOLS%\vsvars32.bat"
devenv xxx.vcxproj /Build "Release|win32"
devenv xxx.vcxproj /Build "Release|x64"

I needed to have this in my script with Microsoft Visual Studio 2015
call "%VS140COMNTOOLS%\vsvars32.bat"
devenv xxx.vcxproj /Build "Release|x86"
devenv xxx.vcxproj /Build "Release|x64"


It's a quick post, if you have question, please post a comment!