PointCloudLibrary / PointCloudLibrary/pcl
[compile error] "error: no matching function for call to ‘vtkSmartPointer<vtkRenderWindow>::operator=(vtkRenderWindow*)’"
Nobody has claimed this yet.
- #4096 by @pionex — closed without merging
- Dominant language
- C++
- Stars
- 11.1k
- Forks
- 4.7k
- Avg merge
- 4d 10h
- Merged PRs (30d)
- 6
Description
Describe the error
[ 39%] Built target pcl_compute_cloud_error
make -f tools/CMakeFiles/pcl_marching_cubes_reconstruction.dir/build.make tools/CMakeFiles/pcl_marching_cubes_reconstruction.dir/depend
make[2]: Entering directory '....../pcl/build_18.04'
cd ....../pcl/build_18.04 && /usr/local/bin/cmake -E cmake_depends "Unix Makefiles" ....../pcl ....../pcl/tools ....../pcl/build_18.04 ....../pcl/build_18.04/tools ....../pcl/build_18.04/tools/CMakeFiles/pcl_marching_cubes_reconstruction.dir/DependInfo.cmake --color=
Scanning dependencies of target pcl_marching_cubes_reconstruction
visualization/CMakeFiles/pcl_visualization.dir/build.make:137: recipe for target 'visualization/CMakeFiles/pcl_visualization.dir/src/histogram_visualizer.cpp.o' failed
make[2]: *** [visualization/CMakeFiles/pcl_visualization.dir/src/histogram_visualizer.cpp.o] Error 1
make -f tools/CMakeFiles/pcl_gp3_surface.dir/build.make tools/CMakeFiles/pcl_gp3_surface.dir/depend
make[2]: Entering directory '....../pcl/build_18.04'
cd ....../pcl/build_18.04 && /usr/local/bin/cmake -E cmake_depends "Unix Makefiles" ....../pcl ....../pcl/tools ....../pcl/build_18.04 ....../pcl/build_18.04/tools ....../pcl/build_18.04/tools/CMakeFiles/pcl_gp3_surface.dir/DependInfo.cmake --color=
Scanning dependencies of target pcl_gp3_surface
In file included from /usr/local/include/pcl-1.11/pcl/visualization/pcl_visualizer.h:2347:0,
from /usr/local/include/pcl-1.11/pcl/visualization/cloud_viewer.h:39,
from ....../pcl/visualization/src/cloud_viewer.cpp:38:
/usr/local/include/pcl-1.11/pcl/visualization/impl/pcl_visualizer.hpp: In member function ‘bool pcl::visualization::PCLVisualizer::addPolygonMesh(const typename pcl::PointCloud<PointT>::ConstPtr&, const std::vector<pcl::Vertices>&, const string&, int)’:
/usr/local/include/pcl-1.11/pcl/visualization/impl/pcl_visualizer.hpp:1704:35: error: ‘class vtkCellArray’ has no member named ‘WritePointer’; did you mean ‘WeakPointers’?
vtkIdType *cell = cell_array->WritePointer (vertices.size (), vertices.size () * (max_size_of_polygon + 1));
^~~~~~~~~~~~
WeakPointers
/usr/local/include/pcl-1.11/pcl/visualization/impl/pcl_visualizer.hpp: In member function ‘bool pcl::visualization::PCLVisualizer::updatePolygonMesh(const typename pcl::PointCloud<PointT>::ConstPtr&, const std::vector<pcl::Vertices>&, const string&)’:
/usr/local/include/pcl-1.11/pcl/visualization/impl/pcl_visualizer.hpp:1881:28: error: ‘class vtkCellArray’ has no member named ‘WritePointer’; did you mean ‘WeakPointers’?
vtkIdType *cell = cells->WritePointer (verts.size (), verts.size () * (max_size_of_polygon + 1));
^~~~~~~~~~~~
WeakPointers
In file included from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_geometry_handlers.h:48:0,
from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_handlers.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/common/actor_map.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/pcl_visualizer.h:48,
from /usr/local/include/pcl-1.11/pcl/visualization/cloud_viewer.h:39,
from ....../pcl/visualization/src/cloud_viewer.cpp:38:
/usr/local/include/vtk-9.0/vtkSmartPointer.h: In instantiation of ‘vtkSmartPointer<ArrayType>& vtkSmartPointer<ArrayType>::operator=(const vtkSmartPointer<ArrayType>&) [with T = vtkRenderWindow]’:
/usr/local/include/pcl-1.11/pcl/visualization/interactor_style.h:364:18: required from here
/usr/local/include/vtk-9.0/vtkSmartPointer.h:144:5: error: no matching function for call to ‘vtkSmartPointer<vtkRenderWindow>::operator=(vtkRenderWindow*)’
this->vtkSmartPointerBase::operator=(r.GetPointer());
^~~~
In file included from /usr/local/include/vtk-9.0/vtkSmartPointer.h:26:0,
from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_geometry_handlers.h:48,
from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_handlers.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/common/actor_map.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/pcl_visualizer.h:48,
from /usr/local/include/pcl-1.11/pcl/visualization/cloud_viewer.h:39,
from ....../pcl/visualization/src/cloud_viewer.cpp:38:
/usr/local/include/vtk-9.0/vtkSmartPointerBase.h:70:24: note: candidate: vtkSmartPointerBase& vtkSmartPointerBase::operator=(vtkObjectBase*)
vtkSmartPointerBase& operator=(vtkObjectBase* r);
^~~~~~~~
/usr/local/include/vtk-9.0/vtkSmartPointerBase.h:70:24: note: no known conversion for argument 1 from ‘vtkRenderWindow*’ to ‘vtkObjectBase*’
/usr/local/include/vtk-9.0/vtkSmartPointerBase.h:71:24: note: candidate: vtkSmartPointerBase& vtkSmartPointerBase::operator=(const vtkSmartPointerBase&)
vtkSmartPointerBase& operator=(const vtkSmartPointerBase& r);
^~~~~~~~
/usr/local/include/vtk-9.0/vtkSmartPointerBase.h:71:24: note: no known conversion for argument 1 from ‘vtkRenderWindow*’ to ‘const vtkSmartPointerBase&’
In file included from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_geometry_handlers.h:48:0,
from /usr/local/include/pcl-1.11/pcl/visualization/point_cloud_handlers.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/common/actor_map.h:41,
from /usr/local/include/pcl-1.11/pcl/visualization/pcl_visualizer.h:48,
from /usr/local/include/pcl-1.11/pcl/visualization/cloud_viewer.h:39,
from ....../pcl/visualization/src/cloud_viewer.cpp:38:
/usr/local/include/vtk-9.0/vtkSmartPointer.h: In instantiation of ‘T* vtkSmartPointer<ArrayType>::GetPointer() const [with T = vtkRenderWindow]’:
/usr/local/include/vtk-9.0/vtkSmartPointer.h:144:44: required from ‘vtkSmartPointer<ArrayType>& vtkSmartPointer<ArrayType>::operator=(const vtkSmartPointer<ArrayType>&) [with T = vtkRenderWindow]’
/usr/local/include/pcl-1.11/pcl/visualization/interactor_style.h:364:18: required from here
/usr/local/include/vtk-9.0/vtkSmartPointer.h:188:43: error: invalid static_cast from type ‘vtkObjectBase* const’ to type ‘vtkRenderWindow*’
T* GetPointer() const noexcept { return static_cast<T*>(this->Object); }
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: Leaving directory '....../pcl/build_18.04'
make -f tools/CMakeFiles/pcl_marching_cubes_reconstruction.dir/build.make tools/CMakeFiles/pcl_marching_cubes_reconstruction.dir/build
make[2]: Leaving directory '....../pcl/build_18.04'
make -f tools/CMakeFiles/pcl_gp3_surface.dir/build.make tools/CMakeFiles/pcl_gp3_surface.dir/build
make[2]: Entering directory '....../pcl/build_18.04'
To Reproduce
Just cmake with most of the applications enabled.
Screenshots/Code snippets/Build information
N/A
Your Environment (please complete the following information):
- OS: Ubuntu 18.04.4
- Compiler: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
- PCL Version: 1.11.0.99
- PCL Type: Installed/Compiled from source
If PCL was compiled from source or failure in compiling PCL itself:
- GPU, Kinfu, CUDA enabled? Yes
- List and Version of dependencies used: refer to https://hastebin.com/esorugaxac.m
- Compilation flags are used: refer to https://hastebin.com/esorugaxac.m
Did anybody meet the same issue??
Cheers
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with visualization/src/cloud_viewer.cpp and the reported references in interactor_style.h and impl/pcl_visualizer.hpp. Reproduce the CMake build with the listed Ubuntu, GCC, PCL, and VTK versions, then trace the reported vtkSmartPointer, vtkCellArray, and WritePointer errors. Done means the visualization targets compile successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-vision
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100