How to improve Visual C++ compilation times?
Solution 1:
One thing that slows down the VC++ compiler is if you have a header file that initializes concrete instances of non-trival const
value types. You may see this happen with constants of type std::string
or GUIDs. It affects both compilation and link time.
For a single dll, this caused a 10x slowdown. It helps if you put them in a precompiled header file, or, just declare them in a header and initialize them in a cpp file.
Do take a look into the virus scanner, and be sure to experiment with precompiled headers, without it you won't see VC++ at its best.
Oh yeah, and make sure the %TMP% folder is on the same partition as where your build is written to, as VC++ makes temp files and moves them later.
Solution 2:
The projects depending on each other doesn't imply that no parallelization is possible. The build systems are smart enough to figure out and avoid critical depenedancies, Otherwise gcc wouldn't be able to use 4 cores.
So (in addition to other steps), why not just try enabling multiprocessing in Visual Studio using /MP (See http://msdn.microsoft.com/en-us/library/bb385193.aspx).