No buildtime speedup after using Incredibuild with Visual Studio Solution file - visual-studio

I am trying to use Xoreax Incredibuild(v 8.01) to buid LLVM solution file using “BuildConsole” but I am not seeing any speedup in the build times.
In the LLVM logs I can see a message Maximum number of concurrent builds reached. Waiting for a build to complete
I believe this could be the reason that I am not seeing the benefit of using Incredibuild to build LLVM.
Version of Visual Studio used by Incredibuild to build the solution file is 2015.
Has anyone else encountered such a message and if so what is the reason/solution?
I have also tried using IB_profile.xml file to build LLVM and see if it helps in getting rid of the above message but
I am seeing the same message when using XML file to integrate Incredibuild with LLVM.
This is the Make command that I am using to build LLVM with Incredibuild:
BuildConsole LLVM.sln /build "Release|x64" /prj="INSTALL" /AvoidLocal=On /profile=IB_profile.xml
This is the content of IB_profile.xml file:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Profile FormatVersion="1">
<Tools>
<Tool Filename="devenv" AllowIntercept="true" AllowRemote="true" AllowPredictedBatch="true" VCCompiler="true" OutputFileMasks="*.exe,*.dll" />
<Tool Filename="cl" AllowRemote="true" AllowPredictedBatch="true" VCCompiler="true" OutputFileMasks="*.exe,*.dll" />
</Tools>
</Profile>
Below is the snippet of LLVM logs:
BuildConsole LLVM.sln /build "Release|x64" /prj="INSTALL" /AvoidLocal=On /profile=IB_profile.xml
-----------------------------------------------------------------
Build Acceleration Console 8.2 (build 1885)
Copyright (C) 2001-2017 Xoreax Software Ltd. All rights reserved.
-----------------------------------------------------------------
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_MODULE_LINKER_FLAGS
-- Build files have been written to: C:/TEMP/rohit/win64/LLVM
BuildConsole LLVM.sln /build "Release|x64" /prj="INSTALL" /AvoidLocal=On /profile=IB_profile.xml
-----------------------------------------------------------------
Build Acceleration Console 8.2 (build 1885)
Copyright (C) 2001-2017 Xoreax Software Ltd. All rights reserved.
-----------------------------------------------------------------
Maximum number of concurrent builds reached.
Waiting for a build to complete...
--------------------Build System Warning---------------------------------------
Predicted Execution mode automatically disabled:
Predicted Execution mode cannot be set together with DisableStdOutIdentify flag.
Please note the disabled predicted execution feature has no effect on build integrity.
-------------------------------------------------------------------------------
Active code page: 437
Microsoft Visual Studio 2015 Version 14.0.25420.1.
Copyright (C) Microsoft Corp. All rights reserved.
1>------ Build started: Project: LLVMSupport, Configuration: Release x64 ------
2>------ Build started: Project: LLVMTableGen, Configuration: Release x64 ------
3>------ Build started: Project: obj.llvm-tblgen, Configuration: Release x64 ------
4>------ Build started: Project: LLVMMC, Configuration: Release x64 ------
5>------ Build started: Project: LLVMMCDisassembler, Configuration: Release x64 ------
6>------ Build started: Project: LLVMMCParser, Configuration: Release x64 ------
7>------ Build started: Project: LLVMOption, Configuration: Release x64 ------
8>------ Build started: Project: LLVMDebugInfoDWARF, Configuration: Release x64 ------
9>------ Build started: Project: LLVMSymbolize, Configuration: Release x64 ------
10>------ Build started: Project: LTO_exports, Configuration: Release x64 ------
11>------ Build started: Project: LLVMDebugInfoPDB, Configuration: Release x64 ------
12>------ Build started: Project: LLVMLineEditor, Configuration: Release x64 ------
13>------ Build started: Project: count, Configuration: Release x64 ------
14>------ Build started: Project: gtest, Configuration: Release x64 ------
15>------ Build started: Project: gtest_main, Configuration: Release x64 ------
16>------ Build started: Project: llvm-PerfectShuffle, Configuration: Release x64 ------

My name is Yoni Davidson and I am from IncrediBuild support team.
Building the LLVM Solution using BuildConsoel shouldn't require profile.xml since it is a Visual Studio Solution and IncrediBuild should handle it.
Therefore, it is possible that either you dont have remote machines (Helpers) and/or perhaps you dont have enough parallel tasks so the performance is more or less as you have with Visual Studio since everything runs locally.
The "Maximum number of concurrent builds reached" means that you are trying to start another build with IncrediBuild while the previous one is still running. This is not allowed and therefore, you receive this message. In any case, this is not the reason for the build performance you have.
I will be happy to assist you with this problem so I suggest that you will contact us directly: support#incredibuild.com or simply right click on IncrediBuild tray icon -> contact support.
Looking forward hearing from you.

Related

msbuild DevTools.Target /p:Configuration=Debug /p:Platform="Win32"

Running command
msbuild DevTools.Target /p:Configuration=Debug /p:Platform="Win32"
fails with error
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.225]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 1/7/2014 2:24:12 PM.
Project "t:\DevTools.Target" on node 1 (default targets).
LoadInfo:
Built PROJECT as C:\XXX
Gathering Version information
IS BUILD MACHINE: false
Next Build # :
Will this run increment the build : yes
Project "t:\PROJECT\DevTools.Target" (1) is building "T:\solution.sln" (2) on node 1 (default targets).
T:\solution.sln.metaproj : error MSB4126: The specified solution configuration "|Debug|Win32" is invalid. Please specify a valid solution configuration using the Configuration and Platform properties (e.g. MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank to use the default solution configuration.
Build FAILED.
Win32 platform DOES exist in solution and I able to build Solution successfully from IDE
Thing is that this is no ordinary SLN file passed to msbuild but instead its TARGET (XML) file.
How can I force msbuild to use "Win32" platform during build ?
see the error, you've got something wrong in your devtools.target: it tries to build "|Debug|Win32" but that should be "Debug|Win32"

VS Solution in custom cmake target sometimes hangs

I've expirienced the promlem using CMake. I need to use VS solution (.sln) in one target, so I have something like that:
set(SLN "${SOME_PATH}/src/exemple.sln")
get_filename_component(
VS_DIR "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\10.0\\Setup\\VS;ProductDir]"
REALPATH CACHE)
set(BUILD_TOOL "${VS_DIR}/Common7/IDE/devenv.exe")
set(BUILD_COMMAND
"${BUILD_TOOL}" "${SLN}" "/build" "Debug"
)
add_custom_target(
${Project_OUTPUT}
COMMAND ${BUILD_COMMAND}
VERBATIM
)
And sometimes this target (when it is being compiled) hangs. Does someone know what it might be? Maybe it doesn't depend on CMake? According to logs, build system starts few projects (from this solution) and does nothing after that:
26>------ Build started: Project: project26, Configuration: Debug Win32 ------
27>------ Build started: Project: project27, Configuration: Debug Win32 ------
28>------ Build started: Project: project28, Configuration: Debug Win32 ------
29>------ Build started: Project: project29, Configuration: Debug Win32 ------
It seems that you need to specify devenv.com instead of devenv.exe. See the output of the following commands:
E:\folder>devenv.exe "E:\folder\solution.sln" /build Debug
E:\folder>devenv.com "E:\folder\solution.sln" /build Debug
Microsoft (R) Visual Studio Version 10.0.40219.1.
Copyright (C) Microsoft Corp. All rights reserved.
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
E:\folder>

Issues with Visual Studio 2010 project creation

I create a simple Win32 projects, edit the configuration and add new platform configurations (x64). I then batch rebuild my project and I get this output:
------ Rebuild All started: Project: Skribe, Configuration: Release x64 ------
main.c
Generating code
Finished generating code
Skribe.vcxproj -> D:\Dev\Skribe\Build\VS2010\Solutions\..\..\..\Output\Bin\x64\Release\Skribe.exe
------ Rebuild All started: Project: Skribe, Configuration: Debug x64 ------
main.c
Skribe.vcxproj -> D:\Dev\Skribe\Build\VS2010\Solutions\..\..\..\Output\Bin\x64\Debug\Skribe.exe
Skribe.vcxproj -> D:\Dev\Skribe\Build\VS2010\Solutions\..\..\..\Output\Bin\x64\Debug\Skribe.exe
------ Rebuild All started: Project: Skribe, Configuration: Release Win32 ------
main.c
Generating code
Finished generating code
Skribe.vcxproj -> D:\Dev\Skribe\Build\VS2010\Solutions\..\..\..\Output\Bin\Win32\Release\Skribe.exe
------ Rebuild All started: Project: Skribe, Configuration: Debug Win32 ------
main.c
Skribe.vcxproj -> D:\Dev\Skribe\Build\VS2010\Solutions\..\..\..\Output\Bin\Win32\Debug\Skribe.exe
========== Rebuild All: 4 succeeded, 0 failed, 0 skipped ==========
The debug x64 build outputs the exe creation message twice and I cannot figure out why. This worries because of a related question I asked where a rebuild actually fails but a clean/build succeeds.
Does anyone know why the extra message is shown? I've done nothing else other than create a solution, exe project, add x64 configuration and batch rebuild.

auto build error while shifting from vs2005 to 2010

Recently we migrated our project from VS205 to VS2010. Post migration we are observing the problem with automated build. Please, see below the details.
Build machine is set up with CruiseControl and a NAnt script for automated builds with devenv.
Building with VS2010 causes a number of (most) projects to start, but not finish (the only message for each project is “Rebuild All started…”). This is the pattern we have observed:
-------Rebuild All started: Project: Scheduler, Configuration: BuildTWinWithPortalSvc x86 ------
------ Rebuild All started: Project: CSerial, Configuration: BuildTWinWithPortalSvc Win32 ------
------ Rebuild All started: Project: sockeeg, Configuration: BuildTWinWithPortalSvc Win32 ------
TwinPortalSetup.vd project gives the message:
An error occurred while validating. HRESULT=’80004005’
Building (on the same machine) with the command line or from the IDE results in no errors.
This script is almost identical to the one that builds the VS2005 solution, which works fine.

visual studio 2005: skipping builds for unknown reason?

I have a visual studio solution with a number of projects.
Configuration manager is carefully configured to build all projects except one ( the one skipped is a test project ). After building solution in command-line i got following:
"building XXX Debug|x64"
------ Skipped Build: Project: AAA ------
------ Skipped Build: Project: BBB, Configuration: Debug Win32 ------
Project not selected to build for this solution configuration
------ Build started: Project: CCC, Configuration: YYY Debug ia64 ------
< here goes build >
As you can see, project BBB is skipped becouse it is not selected in configuration manager, project CCC and rest build ok and project AAA is skipped with NO REASON GIVEN. Anyone knows why visual studio may skip project build without any reason? All configuration names ( XXX, YYY Debug, Debug ) and platforms ( x64 / Win32 / ia64 ) are correctly configured in configuration manager.
Is project AAA selected for configuration Debug|x64 ?
Also I had the same situation when freshly downloaded solution (without .soa file) had the default configuration to Itanium, so all system without its support were skipping all solution projects to build. Properly build was starting only after selecting win32 manually.
Run the project from the command line using MSBUILD.exe and set the parameter for logging (verbosity) = detailed or diagnostic. You should then get me more output telling you why msbuild considered skipping the one in question. e.g.
msbuild XXXX.csproj /verbosity:detailed
Nb. Diagnostic output is very very verbose
Normal builds within Visual Studio are incremental: Visual Studio will skip building a project if it thinks none of the source files have been changed - note that it only checks code files, not resources or other "stuff".
Try doing a clean build by selecting Build|Clean Solution then Build|Rebuild Solution and see if you get the same results.
You may need to manually clean up the build artifacts for each project (by default, the \Bin\ and \Obj\ subdirectories within each project directory).

Resources