2023/03/15
Point CloudのVTK include error
Ubuntu 22.04, ROS2 Humbleにて,pcl visualizerを用いるプログラムを使うとき,以下のようなエラーが発生しました.
/usr/include/pcl-1.12/pcl/visualization/common/common.h:48:10: fatal error: vtkSmartPointer.h: そのようなファイルやディレクトリはありません
48 | #include <vtkSmartPointer.h>
| ^~~~~~~~~~~~~~~~~~~
確かに,/usr/include/pcl-1.12/pcl/visualization/common/common.hというファイルはあり,そこに#include <vtkSmartPointer.h>はあった.そこを絶対パスに変更すれば,そのファイルのビルドは通過しました.
しかし,その方法では,vtk を用いるすべてのPclファイルを変更しなければならず,良い方法ではないです.
そこで,PATHを追加することで,この問題を解決することができました.
解決法
以下の文面を~/.bashrcに追加します.
export CPATH=$CPATH:/usr/include/vtk-9.1
私が使っているvtkのバージョンはvtk-9.1だったので,このように記述しています.
使用者のインストールしているVTKのファイルの場所に応じて,変更する必要があります.