[Insight-users] vtkITK mutual information compilation error

Lorensen, William E (Research) lorensen@crd.ge.com
Fri, 6 Sep 2002 09:20:39 -0400


Feng,
The vtkITK example requires a more recent VTK. It will not compile with VTK 4.0 release.
You will need to checkout a current version of VTK to use this example.

Bill

-----Original Message-----
From: Feng Ma [mailto:mafeng@hotmail.com]
Sent: Thursday, September 05, 2002 6:11 PM
To: insight-users@public.kitware.com
Subject: [Insight-users] vtkITK mutual information compilation error


Dear All:

  I am new to ITK. I am working on medical image segmentation and 
registration. I found that ITK is really an exciting package. However, I can 
not get it compiled. Below is my environment and compilation error. I 
attached my CMakeCache.txt as a gzipped file.

  gcc/g++: version 3.xx
  VTK: 4.0, release version
  FLTK: 1.1.0rc6
  Cable: cvs version
  gccxml: compiled and installed
  gccxml_cc1plus: compiled and installed.
  ITK: cvs version of date 08/28/02.
  cmake: 1.4


  ccmake is ok. I use FLTK 1.1, wrap Tcl, build testing, build examples.
Before the error, I got a bouch of libraries in lib directory, including 
libITKBasicFilters.a, libITKAlgorithms.a, libITKIOI.a, libFltkImageViewer.a, 
total 25 libraries. One strange thing is that in libITKBasicFilter.a, there 
is only one file: itkVTKImageExportBase.o. I don't know if there is 
something wrong here.

  The error happens in building examples in vtkITK/Common:

g++3 -O2 -ftemplate-depth-50 
-I/r2net/space_fma1/Devel/Insight/Examples/vtkITK/C
ommon -I/r2net/space_fma1/Devel/Insight/Code/Algorithms 
-I/r2net/space_fma1/Deve
l/Insight/Code/BasicFilters -I/r2net/space_fma1/Devel/Insight/Code/Common 
-I/r2n
et/space_fma1/Devel/Insight/Code/Numerics 
-I/r2net/space_fma1/Devel/Insight/Code
/IO -I/r2net/space_fma1/Devel/Insight/Code/Numerics/Statistics 
-I/r2net/space_fm
a1/Devel/ITKBuild/Code/Numerics/vxl 
-I/r2net/space_fma1/Devel/Insight/Code/Numer
ics/vxl -I/r2net/space_fma1/Devel/ITKBuild/Code/Numerics/vxl/vcl 
-I/r2net/space_
fma1/Devel/Insight/Code/Numerics/vxl/vcl 
-I/r2net/space_fma1/Devel/Insight/Code/
SpatialObject -I/r2net/space_fma1/Devel/Insight/Utilities/png 
-I/r2net/space_fma
1/Devel/Insight/Utilities/zlib 
-I/r2net/space_fma1/Devel/Insight/Utilities/MetaI
O -I/r2net/space_fma1/Devel/ITKBuild 
-I/r2net/space_fma1/Devel/Insight/Code/Nume
rics/FEM -I/r2net/space_fma1/Devel/VTK/Rendering 
-I/r2net/space_fma1/Devel/VTK/H
ybrid -I/r2net/space_fma1/Devel/VTK/Patented 
-I/r2net/space_fma1/Devel/VTKBuild-I/r2net/space_fma1/Devel/VTK/Common 
-I/r2net/space_fma1/Devel/VTK/Filtering -I/
r2net/space_fma1/Devel/VTK/Imaging -I/r2net/space_fma1/Devel/VTK/Graphics 
-I/r2n
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.h:40:
    because the following virtual functions are abstract:
/r2net/space_fma1/Devel/VTK/Common/vtkAbstractTransform.h:220:  virtual void
   vtkAbstractTransform::Inverse()
/r2net/space_fma1/Devel/VTK/Common/vtkAbstractTransform.h:251:  virtual
   vtkAbstractTransform* vtkAbstractTransform::MakeTransform()
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:57: 
type
   specifier omitted for parameter
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:57: 
parse
   error before string constant
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:57: 
ISO
   C++ forbids declaration of `vtkCxxRevisionMacro' with no type
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:58: 
ISO
   C++ forbids declaration of `vtkStandardNewMacro' with no type
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx: 
In
   member function `virtual void
   vtkITKMutualInformationTransform::PrintSelf(std::ostream&, vtkIndent)':
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:90: 
`class
   vtkITKMutualInformationTransform' has no member named `Superclass'
/r2net/space_fma1/Devel/Insight/Examples/vtkITK/Common/vtkITKMutualInformationTransform.cxx:90: 
parse
   error before `::' token
make[7]: *** [vtkITKMutualInformationTransform.o] Error 1
make[6]: *** [default_target] Error 2
make[5]: *** [default_target_Common] Error 2
make[4]: *** [default_target] Error 2
make[3]: *** [default_target_vtkITK] Error 2
make[2]: *** [default_target] Error 2
make[1]: *** [default_target_Examples] Error 2
make: *** [default_target] Error 2


  I checked the code, class vtkITKMutualInformationTransform does not have 
member named `Superclass'. I met this problem before. I was using gcc2.95 at 
that time. Then I use gcc3, compiling every package mentioned above before 
compiling ITK.

  It maybe useful to know which library and executable are compiled before 
this error. I got the following libraries in ITKBuild/lib dirctory:

libCurves2DExtractorLib.a	 libITKBasicFiltersTcl.a  libITKStatistics.a
libExample_ITKFilterLib.a	 libITKCommon.a		  libitkzlib.a
libExample_ITKRegistrationLib.a  libITKCommonTcl.a	  libMetaIO.a
libFEM.a			 libITKIO.a		  libparam.a
libFltkImageViewer.a		 libITKIOTcl.a		  libvtkFltk.a
libITKAlgorithms.a		 libITKNumerics.a	  libVXLNumerics.a
libITKAlgorithmsTcl.a		 libITKNumericsTcl.a	  libVXLNumericsTcl.a
libITKBasicFilters.a		 libitkpng.a

  I got these files in ITKBuild/bin directory:

BiasCorrector*
BiasFieldEstimator*
BiasImageGenerator*
BrainStripValidationApp*
Curves2DExtractor*
DicomImageViewer*
DistanceMapFilter*
EnergyTablePlotter*
Example_ITKFilterLibTest*
Example_ITKRegistrationLibTest*
ExtractImageRegion*
FEMImageRegLMEx*
FEMRead*
FEMSolverHyperbolicExample*
FEMTruss*
FuzzyConnectedness*
GaussianFilter*
GaussianFilter2D*
GaussianIBSRClassificationApp*
GaussianMinimumErrorClassifier*
GradientRecursiveGaussianFilter*
ImageCorrector*
ImageRegistration*
ImageRegistration2D*
IntensityHistogram3D*
InterSliceIntensityCorrector*
itk2DSimpleLevelSetsExample*
itk3DSimpleLevelSetsExample*
itkAlgorithmsHeaderTest*
itkAlgorithmsTests*
itkAntiAliasBinaryImageFilterExample*
itkBasicFiltersHeaderTest*
itkBasicFiltersTests*
itkCommonHeaderTest*
itkCommonTests*
itkCurvatureFlowToVTK*
itkEllipsoidInteriorExteriorSpatialFunctionExample*
itkFEMTests*
itkFloodFilledSpatialFunctionExample*
itkIOHeaderTest*
itkIOTests*
itkNumericsHeaderTest*
itkNumericsTests*
itkPNGVTKtoITKtoVTK*
itkSampleDataGenerator*
itkSpatialObjectHeaderTest*
itkSpatialObjectTests*
itkStatisticsTests*
itkSymmetricEllipsoidInteriorExteriorSpatialFunctionExample*
itktcl*
itkVTKtoITKtoVTK*
itkWatershedSegmentationExample*
itkWSRawToPNG*
KmeansIBSRClassificationApp*
MetaImageColorViewer*
MetaImageImporter*
MetaImageReadWrite*
MetaImageViewer*
MIRegistration*
MIValidationApp*
Morphogenesis*
MultiResMIRegistration*
MutualInformationEuler2DRegistration*
PNGImageReadWrite*
RawImageReaderViewer*
RawImageReadWrite*
RawImageReadWritePNG*
RegionGrowingSegmentation*
RegionGrowingSegmentation2D*
ShapeDetection*
SlabIdentifier*
SurfaceGenerator*
ThinPlateSplines*
TripleTKID*
vnlTests*
vtk2itk*



  The CMakeCache file is attached as a gzipped file. Please help me because 
I am eager to get this package compiled and try out some examples.

  Thanks a lot.

-Feng





_________________________________________________________________
MSN Photos is the easiest way to share and print your photos: 
http://photos.msn.com/support/worldwide.aspx