<< Back to previous view |
[QB-955] Indicating msbuild to use by PATH env variable does not work
|
|
Status: | Closed |
Project: | QuickBuild |
Component/s: | None |
Affects Version/s: | 3.1.47 |
Fix Version/s: | None |
Type: | Bug | Priority: | Major |
Reporter: | Jan Koprowski | Assigned To: | Robin Shen |
Resolution: | Won't Fix | Votes: | 0 |
Remaining Estimate: | Unknown | Time Spent: | Unknown |
Original Estimate: | Unknown | ||
Environment: |
Server:
SLES 10 Agent: VisualStudio 2010 Windows 2008 |
Description |
After setting "Environment Variables": "PATH" => %PATH%;C:\Windows\Microsoft.NET\Framework\v4.0.30319 in MSBuild step QuickBuild still claim there is no msbuild command in PATH.
|
Comments |
Comment by Robin Shen [ 20/Jun/11 08:35 AM ] |
Due to JVM limitation, MSBuild executable is resolved before environment taking effect. To workaround the issue, please specify MSBuild path in MSBuild plugin setting page ( "Administration/Plugin Management"). |
Comment by Jan Koprowski [ 20/Jun/11 09:19 AM ] |
Nevertheless I have projects compiling on different VisualStudio versions and will be nice to be able to work with each of them.
In VisualStudio there is C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat file where You pass as parameter architecture You need. This batch file modify environment (e.g. PATH variable) setting it for appropriate msbuild appropriate for passed architecture: x86, x64 and so on... Running this command from appropriate Visual Studio just before "msbuild" will solve the problem. Something like: call "%VS100COMNTOOLS%\vcvars32.bat" call "%VCINSTALLDIR%\vcvarsall.bat" ARCHITECTURE where ARCHITECTURE could be: x86, amd64, x64, ia64, x86_amd64, x86_ia64 and then msbuild available in PATH will be the appropriate one. Maybe this approach is too general for solving this problem but I hope this can be a good tip to find solution and make QuickBuild even better :) |