Skip to content

PCL 1.7.0 fails to build from source on Debian Sid (VTK 5.10) #202

@thomas-moulard

Description

@thomas-moulard

Dear PCL maintainers,
PCL fails to build from source with the following error on Debian Sid (VTK 5.10):

 [ 80%] Building CXX object examples/segmentation/CMakeFiles/pcl_example_supervoxels.dir/example_supervoxels.cpp.o
 cd /home/moulard/debian-science/pcl/obj-x86_64-linux-gnu/examples/segmentation && /usr/lib/ccache/c++   -DEIGEN_USE_NEW_STDVECTOR -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -Dqh_QHpointer -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -D_FORTIFY_SOURCE=2  -pthread -fopenmp  -Wno-deprecated -O2 -g -DNDEBUG -isystem /usr/include/eigen3 -isystem /usr/include/ni -isystem /usr/include/qt4 -isystem /usr/include/qt4/QtGui -isystem /usr/include/qt4/QtCore -I/home/moulard/debian-science/pcl/obj-x86_64-linux-gnu/include -I/home/moulard/debian-science/pcl/common/include -I/home/moulard/debian-science/pcl/io/include -I/home/moulard/debian-science/pcl/features/include -I/home/moulard/debian-science/pcl/search/include -I/home/moulard/debian-science/pcl/kdtree/include -I/home/moulard/debian-science/pcl/octree/include -I/home/moulard/debian-science/pcl/filters/include -I/home/moulard/debian-science/pcl/keypoints/include -I/home/moulard/debian-science/pcl/segmentation/include -I/home/moulard/debian-science/pcl/sample_consensus/include -I/home/moulard/debian-science/pcl/outofcore/include -I/home/moulard/debian-science/pcl/geometry/include -I/home/moulard/debian-science/pcl/visualization/include -I/usr/include/vtk-5.8    -DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG -o CMakeFiles/pcl_example_supervoxels.dir/example_supervoxels.cpp.o -c /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp: In function 'void addSupervoxelConnectionsToViewer(PointT&, PointCloudT&, std::string, boost::shared_ptr<pcl::visualization::PCLVisualizer>&)':
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:472:11: error: invalid use of incomplete type 'class vtkPolyLine'
    polyLine->GetPointIds  ()->SetNumberOfIds(points->GetNumberOfPoints ());
            ^
 In file included from /usr/include/vtk-5.8/vtkPolyDataAlgorithm.h:38:0,
                  from /usr/include/vtk-5.8/vtkVectorText.h:35,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp:44,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/pcl_visualizer.h:2004,
                  from /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:7:
 /usr/include/vtk-5.8/vtkPolyData.h:65:7: error: forward declaration of 'class vtkPolyLine'
  class vtkPolyLine;
        ^
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:474:13: error: invalid use of incomplete type 'class vtkPolyLine'
      polyLine->GetPointIds ()->SetId (i,i);
              ^
 In file included from /usr/include/vtk-5.8/vtkPolyDataAlgorithm.h:38:0,
                  from /usr/include/vtk-5.8/vtkVectorText.h:35,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp:44,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/pcl_visualizer.h:2004,
                  from /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:7:
 /usr/include/vtk-5.8/vtkPolyData.h:65:7: error: forward declaration of 'class vtkPolyLine'
  class vtkPolyLine;
        ^
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:475:34: error: invalid user-defined conversion from 'vtkSmartPointer<vtkPolyLine>' to 'int' [-fpermissive]
    cells->InsertNextCell (polyLine);
                                   ^
 In file included from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_geometry_handlers.h:48:0,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_handlers.h:41,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/common/actor_map.h:40,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/pcl_visualizer.h:47,
                  from /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:7:
 /usr/include/vtk-5.8/vtkSmartPointer.h:73:3: note: candidate is: vtkSmartPointer<T>::operator T*() const [with T = vtkPolyLine] <near match>
    operator T* () const
    ^
 /usr/include/vtk-5.8/vtkSmartPointer.h:73:3: note:   no known conversion for implicit 'this' parameter from 'vtkPolyLine*' to 'int'
 In file included from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_geometry_handlers.h:48:0,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_handlers.h:41,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/common/actor_map.h:40,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/pcl_visualizer.h:47,
                  from /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:7:
 /usr/include/vtk-5.8/vtkSmartPointer.h: In instantiation of 'static vtkSmartPointer<T> vtkSmartPointer<T>::New() [with T = vtkPolyLine]':
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:459:73:   required from here
 /usr/include/vtk-5.8/vtkSmartPointer.h:113:38: error: incomplete type 'vtkPolyLine' used in nested name specifier
      return vtkSmartPointer<T>(T::New(), NoReference());
                                  ^
 In file included from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_geometry_handlers.h:48:0,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/point_cloud_handlers.h:41,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/common/actor_map.h:40,
                  from /home/moulard/debian-science/pcl/visualization/include/pcl/visualization/pcl_visualizer.h:47,
                  from /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:7:
 /usr/include/vtk-5.8/vtkSmartPointer.h: In instantiation of 'T* vtkSmartPointer<T>::operator->() const [with T = vtkPolyLine]':
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:472:11:   required from here
 /usr/include/vtk-5.8/vtkSmartPointer.h:90:40: error: invalid static_cast from type 'vtkObjectBase* const' to type 'vtkPolyLine*'
      return static_cast<T*>(this->Object);
                                         ^
 /usr/include/vtk-5.8/vtkSmartPointer.h: In instantiation of 'vtkSmartPointer<T>::operator T*() const [with T = vtkPolyLine]':
 /home/moulard/debian-science/pcl/examples/segmentation/example_supervoxels.cpp:475:34:   required from here
 /usr/include/vtk-5.8/vtkSmartPointer.h:75:40: error: invalid static_cast from type 'vtkObjectBase* const' to type 'vtkPolyLine*'
      return static_cast<T*>(this->Object);
                                         ^
 make[4]: *** [examples/segmentation/CMakeFiles/pcl_example_supervoxels.dir/example_supervoxels.cpp.o] Error 1
 make[4]: Leaving directory `/home/moulard/debian-science/pcl/obj-x86_64-linux-gnu'
 make[3]: *** [examples/segmentation/CMakeFiles/pcl_example_supervoxels.dir/all] Error 2
 make[3]: Leaving directory `/home/moulard/debian-science/pcl/obj-x86_64-linux-gnu'
 make[2]: *** [all] Error 2
 make[2]: Leaving directory `/home/moulard/debian-science/pcl/obj-x86_64-linux-gnu'
 dh_auto_build: make -j1 returned exit code 2
 make[1]: *** [override_dh_auto_build] Error 2
 make[1]: Leaving directory `/home/moulard/debian-science/pcl'
 make: *** [build] Error 2

Apparently, the header providing the vtkPolyLine class is not included.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions