A simple CPP source file change caused entire solution to relink

My group is new to VS05 and previously used VS 6.0. Several people in our group have had an ongoing battle with the compiler. It seems that when you make a simple change to a CPP source file that it will cause the entire solution to have to relink. We do have dependencies set between several projects within the solution, but if I am not changing a common header file or a method signature then I would not expect all of the project to need to be relinked. This was not an issue in VS 6.0.

Does anyone have a suggestion on what would cuase this



Answer this question

A simple CPP source file change caused entire solution to relink

  • Rick Potts - MSFT

    Hmm, nothing else comes to mind other than two attempts:

    1. Clean out immediate files (including solution-scope ones like *.ncb, *.suo) manually.

    2. Create a new project from scratch and add the cpp files back in.  If it happens to work, compare the project files for any differences (and report back so we can learn from it).

    Brian


  • Silverblade2005

    Do you mean compiled or linked.

    In my environment, when I change a header file, all files needs a recompile that uses this headerfile. Finally all modukes need to be linked thta uses those object files...

    I heared never of a problem that the change of a header file needs a relink without compile. Except this header file is used inside the resources!

    Show us a build log, after the change of a header file.



  • highlycaffeinated

    It relinks the solution not compile.

    We also did not change a header file only a CPP file. I could understand a header file change forcing a compile of all affected code.


  • JoshLindenmuth

    Do you have Enable Incremental Linking set to Yes It's under Project Properties->Linker->General.
  • Krishnaraj Varma

    Yes we do have it enabled.
  • BEACHDBA

    if you have a project that is producing a lib (or dll that has an export lib), and other projects depend on that lib/export lib, those dependent projects will link the lib into their image. a change to a cpp file in the first project will then necessitate a re-link of the dependent projects.

    but this normally wouldn't relink the entire solution, only some of the projects within the solution.

    josh

    VC++ project system developer



  • A simple CPP source file change caused entire solution to relink