Closed shimoe closed 7 years ago
@shimoe PCLのインストールは行いましたか? まだインストールしていない場合には, https://github.com/RyodoTanaka/my_ubuntu_setup/blob/master/PCL/installer.bash 上記のインストールスクリプトを使ってインストールしてみてください.
方法は
hoge.bash
とする)$ source hoge.bash
以上です.
@RyodoTanaka していなかったようなので installer.bash を用いてインストールしましたが、再び以下のようなエラーコードが出ました。
[ 68%] Building CXX object motoman_tools/iai_kinect2/kinect2_bridge/CMakeFiles/kinect2_bridge.dir/src/kinect2_bridge.cpp.o In file included from /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/euclidean_cluster.cpp:2:0: /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/../include/euclidean_cluster.hpp:19:55: fatal error: pcl/features/moment_of_inertia_estimation.h: そのようなファイルやディレクトリはありません
^
compilation terminated. In file included from /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/euclidean_cluster_node.cpp:1:0: /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/include/euclidean_cluster.hpp:19:55: fatal error: pcl/features/moment_of_inertia_estimation.h: そのようなファイルやディレクトリはありません
^
compilation terminated.
@shimoe PCLをインストール後、
<catkin_ws>/build
と<catkin_ws>/devel
を削除した後,再度コンパイル(catkin_make
もしくはcatkin build
)をしても同様ですか?
@RyodoTanaka はい、同様のエラーコードが出ました。
@shimoe oh... ちょっと時間をくださいm( )m
@shimoe こんなissueを発見しました. http://www.pcl-users.org/Moment-of-Inertia-include-error-td4041827.html 上記issueでは,PCL-ROS依存のヘッダーであるかもとの結論に至っています.
そこで,
$ sudo apt-get install ros-indigo-pcl-ros
を実行後も同様のエラーが出るかどうか調べてみてくださいm( )m
あと確認ですが,インストール時に
catkin_ws
にmotoman_project
をclonerosdep install -i -y -r --from-paths src --ignore-src
を<catkin_ws>
で実行という手順は踏んだ上でエラーが起きているということでOKですか?
@RyodoTanaka はい その手順を踏んだ上で上記のエラーが起きてます
@shimoe
私の環境では,
/usr/include/pcl-1.7/pcl/features/moment_of_inertia_estimation.h
にヘッダーがあります.
/usr/include/pcl-***/
の***の部分はどのようになっていますか?
@RyodoTanaka pcl-1.7ですね・・・
@shimoe Nooooooooooooooooooooooooooooooh! もう少し時間をくださいm( )m
@shimoe
pcl-1.7.2rc1
以上でないと、問題になっているヘッダーが存在しないというところまで確認しました.
紹介したinstaller.bashでどのバージョンが引っ張ってこられるのかを確認してみます.
https://github.com/PointCloudLibrary/pcl/blob/pcl-1.7.2rc1/features/include/pcl/features/moment_of_inertia_estimation.h
つまり,問題の環境では1.7.0〜1.7.1のバージョンが入ってしまっている事になります.
@RyodoTanaka
/usr/include/pcl-1.7/pcl/features/
の中を見たところ
moment_of_inertia_estimation.h
が存在しませんでした。
似たようなヘッダファイルとして
moment_invariants.h
があります。
@shimoe 調べたところ,引っ張って来られるpclのバージョンは1.7.2のようでした https://launchpad.net/%7Ev-launchpad-jochen-sprickerhof-de/+archive/ubuntu/pcl/+index?field.series_filter=trusty
$ sudo apt-get install libpcl-1.7-all
$ cd <catkin_ws>
$ rm -rf <catkin_ws>/build
$ rm -rf <catkin_ws>/devel
$ catkin_make
を行っても同様ですか?
@RyodoTanaka
ダメみたいですね・・・
一応pcl-1.7
の中も確認しましたが存在しませんでした。
@shimoe うーん 一番手っ取り早い解決策は、ソースコードを直接cloneしてきてインストールする方法です. ただ、Travisでエラーが起きていない以上,なぜこのような現象が起きるのか調べる必要があります.
@RyodoTanaka ソースコードを直接インストールして来てから apt-get update及びapt-get uograde を行った後、ビルドしたら通りました。
回答有り難うございました
問題点
wikiのインストール手順に従ってインストールしていた所、以下のようなエラーに出会いました。 pcl関連のエラーのようですが解決策がわかりません。
環境
Ubuntu14.04 ROS indigo Kernel 3.13.0-116-generic
エラーコード
[ 26%] Building CXX object motoman_project/motoman_recognition/motoman_euclidean_cluster/CMakeFiles/euclidean_cluster_node.dir/src/euclidean_cluster_node.cpp.o In file included from /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/euclidean_cluster.cpp:2:0: /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/../include/euclidean_cluster.hpp:19:55: fatal error: pcl/features/moment_of_inertia_estimation.h: そのようなファイルやディレクトリはありません
include <pcl/features/moment_of_inertia_estimation.h>
compilation terminated. In file included from /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/src/euclidean_cluster_node.cpp:1:0: /home/shimoe/motoman_ws/src/motoman_project/motoman_recognition/motoman_euclidean_cluster/include/euclidean_cluster.hpp:19:55: fatal error: pcl/features/moment_of_inertia_estimation.h: そのようなファイルやディレクトリはありません
include <pcl/features/moment_of_inertia_estimation.h>
compilation terminated.