rotors_gazebo packageの実行時エラー
ETHのrotors_simulatorリポジトリの実行時エラーの解決に苦労したので備忘録.
bug
こんなエラーが出る.
[gazebo-8] process has died [pid , exit code 127, cmd /opt/ros/melodic/lib/gazebo_ros/gzserver -u -e ode rotors_simulator/rotors_gazebo/worlds/basic.world __name:=gazebo __log:=/
下のプルリクエストのCMakelists.txtへと置き換える.
https://github.com/ethz-asl/rotors_simulator/pull/667
なぜマージをしないのか.
build時のエラー
1
Errors << rotors_gazebo:cmake /home/noby/catkin_ws/logs/rotors_gazebo/build.cmake.006.log
CMake Warning (dev) at /usr/share/cmake-3.10/Modules/FindBoost.cmake:911 (if):
Policy CMP0054 is not set: Only interpret if() arguments as variables or
keywords when unquoted. Run "cmake --help-policy CMP0054" for policy
details. Use the cmake_policy command to set the policy and suppress this
warning.
Quoted variables like "chrono" will no longer be dereferenced when the
policy is set to NEW. Since the policy is not set the OLD behavior will be
used.
Call Stack (most recent call first):
/usr/share/cmake-3.10/Modules/FindBoost.cmake:1558 (_Boost_MISSING_DEPENDENCIES)
/usr/share/OGRE/cmake/modules/FindOGRE.cmake:318 (find_package)
/usr/lib/x86_64-linux-gnu/cmake/gazebo/gazebo-config.cmake:175 (find_package)
CMakeLists.txt:12 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
Cmakeのバージョン指定を以下のようにへんこうしたら直った
rotors_simulator/rotors_gazebo/CMakeLists.txt
#cmake_minimum_required(VERSION 2.8.3)
cmake_minimum_required(VERSION 3.10.1)
その2
ImportError: "from catkin_pkg.package import parse_package" failed: No module named 'catkin_pkg'
Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.
CMake Error at /opt/ros/melodic/share/catkin/cmake/safe_execute_process.cmake:11 (message):
execute_process(/home/noby/anaconda3/bin/python
"/opt/ros/melodic/share/catkin/cmake/parse_package_xml.py"
"/opt/ros/melodic/share/catkin/cmake/../package.xml"
"/home/noby/catkin_ws/build/rotors_gazebo/catkin/catkin_generated/version/package.cmake")
returned error code 1
Call Stack (most recent call first):
/opt/ros/melodic/share/catkin/cmake/catkin_package_xml.cmake:74 (safe_execute_process)
/opt/ros/melodic/share/catkin/cmake/all.cmake:168 (_catkin_package_xml)
/opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:20 (include)
CMakeLists.txt:47 (find_package)
これで終わり
pip install catkin-pkg
おまけ
build時必要な依存パッケージのインストール
octomap
sudo apt-get install ros-melodic-octomap ros-melodic-octomap-msgs ros-melodic-octomap-ros ros-melodic-octomap-rviz-plugins
glog
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev