[Cmake] RE: [Insight-developers] (ITK) Build Errors terminus.kitware -- WinXP-VC60, library rebuil ds
Ken Martin
ken.martin at kitware.com
Mon Mar 17 15:10:34 EST 2003
I just checked and as far as I can see CMake is setting up the target
dependencies (and chaining them) correctly for both VS6 and VC7. (it is
easy to verify from VS just look at the project dependencies). Having
seen this type of problem before on occasion, my suspicion is that this
is a bug in the VS incremental linker or VS dependency checks.
Unfortunately the offending dashboard was cleaned so there is little
remaining evidence. Looking at the dashboard it seems clear that
ITKCommon was rebuilt (the symbols are missing as they should be) the
problem seems to be that some examples still think that the symbols
should be there. So either the executable is screwed up (VS is trying to
relink the executable) or the specific test .obj file (Smooth something
or another in this case) has not been rebuilt, but that is a VS
dependency issue. It would have been nice if we could have checked if
the Smooth.obj was up to date or not.
Ken
-----Original Message-----
From: insight-developers-admin at public.kitware.com
[mailto:insight-developers-admin at public.kitware.com] On Behalf Of
Miller, James V (Research)
Sent: Monday, March 17, 2003 2:18 PM
To: Insight-developers (E-mail); CMake developers (E-mail)
Subject: [Insight-developers] (ITK) Build Errors terminus.kitware --
WinXP-VC60, library rebuil ds
The build errors on terminus.kitware are referencing methods that I
removed from the system on Friday. These symbols were never used, so I
deleted them to simplify the code.
Since we have these build errors, it looks VC6 did not rebuild all the
libraries or an old object file is lying around.
The reason I bring this up on the list(s) is that we have had a lot of
problems recently with VC6 building applications (examples) where the
dependent libraries are not being rebuilt. Here is an example: change
some code in library A. Library B links with library A. Executable C
links with library B. If you just tell VC6 to build executable C, then
library A does not get rebuilt. If you build from the top using the
ALL_BUILD target, then everything works fine. I think Matt discovered if
he added the other libraries to the particular projects (using "Add
files to project"), then the rebuilds are triggered properly. However,
this information is lost the next time CMake is run.
Have other people seen this? Can CMake add the link libraries that an
executable uses that are also built by the workspace to the dependent
projects? Or is this necessary?
I think I have seen this same behavior on VC7.
Jim Miller
_____________________________________
Visualization & Computer Vision
GE Research
Bldg. KW, Room C218B
P.O. Box 8, Schenectady NY 12301
millerjv at research.ge.com
james.miller at research.ge.com
(518) 387-4005, Dial Comm: 8*833-4005,
Cell: (518) 505-7065, Fax: (518) 387-6981
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20030317/1b0593f6/attachment.html>
More information about the CMake
mailing list