[vtk-developers] VTK CVS broken: vtkInformationExecutivePortVectorKey and vtkExecutive link error in Debug only

Berk Geveci berk.geveci at kitware.com
Thu Oct 18 14:51:56 EDT 2007


I don't have much time to think about this but maybe you could break
vtkInformation into two? A superclass such as vtkInformationBase that does
not have anything Executive specific (in Common) and a vtkInformation
subclass in Filtering? vtkDataArray could have a vtkInformationBase and
everything else could keep using vtkInformation... Just an idea.

-berk

On 10/18/07, David C Thompson <dcthomp at sandia.gov> wrote:
>
> > We are unable to build VTK from CVS.  It Release it links, in Debug it
> > does not.  The error is:
> >
> > Linking CXX executable ../../../bin/CommonCxxTests
> > Undefined symbols:
> >   "typeinfo for vtkExecutive", referenced from:
> >       typeinfo for vtkExecutive*in libvtkCommon.a(
> vtkInformationExecutivePortVectorKey.o)
> > ld: symbol(s) not found
> >
> > We see that vtkInformationExecutivePortVectorKey was recently moved from
> > Filtering to Common, but vtkExecutive is still in Filtering.  Should it
> > move too?
> I will be happy to move vtkExecutive to Common if Kitware approves, but
> I doubt they will because it would involve moving the following classes
> as well (since vtkExecutive.cxx includes them):
>    vtkAlgorithm
>    vtkAlgorithmOutput
>    vtkDataObject
> And then all of *their* dependencies would have to be moved. I think an
> aesthetically more pleasing solution would be to eliminate
> vtkInformation's dependency on vtkExecutive but I don't see a simple way
> to do this. Do any of you?
>
> > Oddly, I do not see this problem on any dashboard.  But we have reproed
> > this on two machine, with fresh checkouts and fresh builds.
> I certainly never saw it before I committed the move but perhaps I
> didn't build static libraries? Could all of this be caused by
> vtkSetObjectMacro() calling GetClassName() inside a vtkDebugMacro()?
> With VTK_DEBUG_LEAKS turned on, does the vtkExecutive::Register() call
> (also in vtkSetObjectMacro) also ask for the class name of the
> vtkExecutive object? If so, it might be more difficult.
>
>         David
>
> _______________________________________________
> vtk-developers mailing list
> vtk-developers at vtk.org
> http://www.vtk.org/mailman/listinfo/vtk-developers
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtk-developers/attachments/20071018/40e58de3/attachment.html>


More information about the vtk-developers mailing list