I am aware that there are a couple of questions that look similar to mine, e.g. here, here, here or here. Yet none of these really answer my question. Here it goes.
I am building a modified version of a Chromium browser in VS2008 (mostly written in C++). It has 500 projects in one solution with plenty of dependencies between them. There are generally two problems:
- Whenever I start debugging (press F5 or green Play button) for the first time in a session the VS freezes and it takes a couple of minutes before it recovers and actually starts debugging. Note that I have disabled building before running, because whenever I want to build my project I use F7 explicitly. I do not understand why it takes so long to "just" start a compiled binary. Probably VS is checking all the deps and making sure everything up-to-date despite my request not to build a solution before running. Is the a way speed this one up?
- Every time I perform a build it takes about 5-7 minutes even if I have only changed one instruction in one file. Most of the time is consumed by the linking process, since most projects generate static libs that are then linked into one huge dll. Apparently incremental linking only works in about 10% of the cases and still takes considerably long. What can I do to speed it up?
Here is some info about my software and hardware:
- MacBook Pro (Mid-2010)
- 8 GB RAM
- dual-core Intel i7 CPU with HT (which makes it look like 4-core in Task Manager)
- 500GB Serial ATA; 5400 rpm (Hitachi HTS725050A9A362)
- Windows 7 Professional 64-bit
- Visual Assist X (with disabled code coloring)
Here are some things that I have noticed:
- Linking only uses one core
- When running solution for the second time in one session it is much quicker (under 2-3 seconds)