Our solution contains 8 projects - one MFC exe, one DLL, and six static libraries. We are using VC++ 2003.
To do a full link on the executable is very slow - as much as 10 minutes. We believe this is the fault of some third-party libraries we are linking to, but right now we don't have an alternative to using them.
Incremental links, by contrast, take less than two minutes. This ought to largely take care of the issue, but it doesn't.
If just one file in any of the libraries changes, the exe seems to always require a full link. Static or dynamic library does not seem to make a difference. Why is this Has it been fixed in VC++ 2005

Incremental linking
BarrySumpter
These are debug builds. We do not use LTCG or whole program.
In any case, my question is not with the amount of time the full link takes, but why the linker is doing a full link in the first place when only one file has changed.
RacingJack
Is this in release builds or debug builds If release, are you using link time code generation and whole program optimization In my experience, that can take up to 10 times the amount of time to link than normal linking.
Ted.
Grady Jr Henderson
Mausi
KayaksTheAtlantic
Also if the changes are to static libraries you also get a full link.
In VS2005, if you're using the IDE, then we will incrementally link in the face of changing static libraries.
Thanks,
Kang Su Gatlin
Visual C++ Program Manager