[Insight-developers] (ITK) Build Errors terminus.kitware -- W
inXP-VC60, library rebuil ds
Miller, James V (Research)
millerjv@crd.ge.com
Mon, 17 Mar 2003 16:02:21 -0500
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_001_01C2ECC8.80D45A90
Content-Type: text/plain
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.
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.
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.
Sorry for the specific example. But I am in the rush to talk to someone.....
Jim
-----Original Message-----
From: Ken Martin [mailto:ken.martin@kitware.com]
Sent: Monday, March 17, 2003 3:11 PM
To: 'Miller, James V (Research)'; 'Insight-developers (E-mail)'; 'CMake
developers (E-mail)'
Subject: RE: [Insight-developers] (ITK) Build Errors terminus.kitware --
WinXP-VC60, library rebuil ds
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@public.kitware.com
[mailto:insight-developers-admin@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@research.ge.com <mailto:millerjv@research.ge.com>
james.miller@research.ge.com
(518) 387-4005, Dial Comm: 8*833-4005,
Cell: (518) 505-7065, Fax: (518) 387-6981
------_=_NextPart_001_01C2ECC8.80D45A90
Content-Type: text/html
<!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>
------_=_NextPart_001_01C2ECC8.80D45A90--