<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=US-ASCII">
<META content="MSHTML 6.00.2715.400" name=GENERATOR>
<STYLE>@font-face {
font-family: Tahoma;
}
@font-face {
font-family: Comic Sans MS;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
COLOR: blue; TEXT-DECORATION: underline
}
P {
FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Times New Roman"
}
SPAN.EmailStyle19 {
COLOR: navy; FONT-FAMILY: Arial
}
DIV.Section1 {
page: Section1
}
</STYLE>
</HEAD>
<BODY lang=EN-US vLink=blue link=blue>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff size=2>Well here a
test that I ran the other day. It happens to mimic the problem that Matt
was having. In ITK, there is a library under Utilities called
DICOMParser. In Code/IO is there is a class that uses this library called
itkDICOMImageIO2. If I make a change to Utilities/DICOMParser/DICOMFile.cxx and
tell DevStudio to rebuild the IO library, it does not recompile
DICOMFile.cxx. It instead thinks that Utilities/DICOMParser is up to date
and links the IO library using the old DICOMParser lib.</FONT></SPAN></DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff size=2>Matt added the
DICOMParser library to the IO project using "Add Files To Project..." and then a
change to DICOMFile.cxx does cause the IO library to build.</FONT></SPAN></DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff size=2>Otherwise, I
would fathom that you are correct in that the incremental linker is trying to
incrementally link an old executable with a new library and
complaining.</FONT></SPAN></DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff size=2>Sorry for the
specific example. But I am in the rush to talk to
someone.....</FONT></SPAN></DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2>Jim</FONT></SPAN></DIV>
<DIV><SPAN class=678185620-17032003><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Ken Martin
[mailto:ken.martin@kitware.com]<BR><B>Sent:</B> Monday, March 17, 2003 3:11
PM<BR><B>To:</B> 'Miller, James V (Research)'; 'Insight-developers (E-mail)';
'CMake developers (E-mail)'<BR><B>Subject:</B> RE: [Insight-developers] (ITK)
Build Errors terminus.kitware -- WinXP-VC60, library rebuil
ds<BR><BR></FONT></DIV>
<DIV class=Section1>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">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.</SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT> </P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Ken</SPAN></FONT></P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT> </P>
<P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN
style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT> </P>
<DIV
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
<P class=MsoNormal><FONT face=Tahoma size=2><SPAN
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">-----Original
Message-----<BR><B><SPAN style="FONT-WEIGHT: bold">From:</SPAN></B>
insight-developers-admin@public.kitware.com
[mailto:insight-developers-admin@public.kitware.com] <B><SPAN
style="FONT-WEIGHT: bold">On Behalf Of </SPAN></B>Miller, James V
(Research)<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Monday,
March 17, 2003 2:18 PM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B>
Insight-developers (E-mail); CMake developers (E-mail)<BR><B><SPAN
style="FONT-WEIGHT: bold">Subject:</SPAN></B> [Insight-developers] (ITK) Build
Errors terminus.kitware -- WinXP-VC60, library rebuil ds</SPAN></FONT></P>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"></SPAN></FONT> </P>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=2><SPAN
style="FONT-SIZE: 10pt">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.</SPAN></FONT></P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"></SPAN></FONT> </P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=2><SPAN
style="FONT-SIZE: 10pt">Since we have these build errors, it looks VC6 did not
rebuild all the libraries or an old object file is lying
around.</SPAN></FONT></P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"></SPAN></FONT> </P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=2><SPAN
style="FONT-SIZE: 10pt">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.</SPAN></FONT></P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=2><SPAN
style="FONT-SIZE: 10pt">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?</SPAN></FONT></P>
<P class=MsoNormal><FONT face="Times New Roman" size=2><SPAN
style="FONT-SIZE: 10pt">I think I have seen this same behavior on
VC7.</SPAN></FONT></P>
<P style="MARGIN: 0in 0in 0pt"><B><FONT face="Comic Sans MS" color=navy
size=3><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 12pt; COLOR: navy; FONT-FAMILY: 'Comic Sans MS'">Jim
Miller</SPAN></FONT></B> <BR><B><I><FONT face=Arial color=red size=2><SPAN
style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: red; FONT-STYLE: italic; FONT-FAMILY: Arial">_____________________________________</SPAN></FONT></I></B><BR><EM><I><FONT
face=Arial color=black size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-FAMILY: Arial">Visualization &
Computer Vision</SPAN></FONT></I></EM><I><FONT face=Arial color=black
size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-STYLE: italic; FONT-FAMILY: Arial"><BR><EM><I><FONT
face=Arial><SPAN style="FONT-FAMILY: Arial">GE
Research</SPAN></FONT></I></EM><BR><EM><I><FONT face=Arial><SPAN
style="FONT-FAMILY: Arial">Bldg. KW, Room
C218B</SPAN></FONT></I></EM><BR><EM><I><FONT face=Arial><SPAN
style="FONT-FAMILY: Arial">P.O. Box 8, Schenectady NY
12301</SPAN></FONT></I></EM><BR><BR></SPAN></FONT></I><EM><I><U><FONT
face="Times New Roman" color=blue size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: blue"><A
href="mailto:millerjv@research.ge.com">millerjv@research.ge.com</A></SPAN></FONT></U></I></EM></P>
<P style="MARGIN: 0in 0in 0pt"><EM><I><U><FONT face="Times New Roman"
color=blue size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: blue">james.miller@research.ge.com</SPAN></FONT></U></I></EM><BR><I><FONT
face=Arial color=black size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-STYLE: italic; FONT-FAMILY: Arial">(518)
387-4005, Dial Comm: 8*833-4005, </SPAN></FONT></I><BR><I><FONT face=Arial
color=black size=1><SPAN
style="FONT-SIZE: 7.5pt; COLOR: black; FONT-STYLE: italic; FONT-FAMILY: Arial">Cell:
(518) 505-7065, Fax: (518) 387-6981</SPAN></FONT></I> </P>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"></SPAN></FONT> </P></DIV>
<DIV>
<P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN
style="FONT-SIZE: 12pt"></SPAN></FONT> </P></DIV></DIV></DIV></BLOCKQUOTE></BODY></HTML>