トランジスタ技術9月号のrosのチュートリアルを勉強しています。
githubにあるrosのパッケージをダウンロードしました
$ cd ~/catkin_ws/src $ git clone https://github.com/takasehideki/toragi_ros_tutorial
そのあとcatkin_make
を実行したのですが、
fatal error: toragi_pkg1/Human.h: No such file or directory #include "toragi_pkg1/Human.h" ^~~~~~~~~~~~~~~~~~~~~ compilation terminated. toragi_ros_tutorial/toragi_pkg1/CMakeFiles/node5.dir/build.make:62: recipe for target 'toragi_ros_tutorial/toragi_pkg1/CMakeFiles/node5.dir/src/node5.cpp.o' failed make[2]: *** [toragi_ros_tutorial/toragi_pkg1/CMakeFiles/node5.dir/src/node5.cpp.o] Error 1 CMakeFiles/Makefile2:17605: recipe for target 'toragi_ros_tutorial/toragi_pkg1/CMakeFiles/node5.dir/all' failed make[1]: *** [toragi_ros_tutorial/toragi_pkg1/CMakeFiles/node5.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs....
というエラーが発生しました。
node5.cppの"toragi_pkg1/Human.h"がincludeできていないようです。
rosのmsgのチュートリアルのあるサイトを参考にして
package.xmlとCMakeLists.txtを編集しました。
package.xmlはもとのファイルからコメントアウトを行いました。
先ほどのサイトに書いてある通り
40行目の<build_depend>message_generation</build_depend>と、46行目の<exec_depend>message_runtime</exec_depend>のコメントアウトを外しました。
CMakeLists.txtは以下のようになりました。
<?xml version="1.0"?> <package format="2"> <name>toragi_pkg1</name> <version>0.0.0</version> <description>The toragi_pkg1 package</description> <!-- One maintainer tag required, multiple allowed, one person per tag --> <!-- Example: --> <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> --> <maintainer email="takase@todo.todo">takase</maintainer> <!-- One license tag required, multiple allowed, one license per tag --> <!-- Commonly used license strings: --> <!-- BSD, MIT, Boost Software License, GPLv2, GPLv3, LGPLv2.1, LGPLv3 --> <license>TODO</license> <!-- Url tags are optional, but multiple are allowed, one per tag --> <!-- Optional attribute type can be: website, bugtracker, or repository --> <!-- Example: --> <!-- <url type="website">http://wiki.ros.org/toragi_pkg1</url> --> <!-- Author tags are optional, multiple are allowed, one per tag --> <!-- Authors do not have to be maintainers, but could be --> <!-- Example: --> <!-- <author email="jane.doe@example.com">Jane Doe</author> --> <!-- The *depend tags are used to specify dependencies --> <!-- Dependencies can be catkin packages or system dependencies --> <!-- Examples: --> <!-- Use depend as a shortcut for packages that are both build and exec dependencies --> <!-- <depend>roscpp</depend> --> <!-- Note that this is equivalent to the following: --> <!-- <build_depend>roscpp</build_depend> --> <!-- <exec_depend>roscpp</exec_depend> --> <!-- Use build_depend for packages you need at compile time: --> <build_depend>message_generation</build_depend> <!-- Use build_export_depend for packages you need in order to build against this package: --> <!-- <build_export_depend>message_generation</build_export_depend> --> <!-- Use buildtool_depend for build tool packages: --> <!-- <buildtool_depend>catkin</buildtool_depend> --> <!-- Use exec_depend for packages you need at runtime: --> <exec_depend>message_runtime</exec_depend> <!-- Use test_depend for packages you need only for testing: --> <!-- <test_depend>gtest</test_depend> --> <!-- Use doc_depend for packages you need only for building documentation: --> <!-- <doc_depend>doxygen</doc_depend> --> <buildtool_depend>catkin</buildtool_depend> <build_depend>roscpp</build_depend> <build_depend>std_msgs</build_depend> <build_export_depend>roscpp</build_export_depend> <build_export_depend>std_msgs</build_export_depend> <exec_depend>roscpp</exec_depend> <exec_depend>std_msgs</exec_depend> <!-- The export tag contains other, unspecified, tags --> <export> <!-- Other tools can request additional information be placed here --> </export> </package>
と変更したのですが、同様のエラーが発生してしまいます。
どうすればnode5.cppをbuildできるでしょうか。
ご回答お待ちしております。
##環境
wsl2
windows10 pro 64bit 2004
ubuntu 18.04
ros melodic
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。