ROS+clion多节点调试

  使用ide调试slam算法,假定已经在ide构建好功能包(ROS工程已经包含build、devel、src目录(即:在bash窗口已经初始化 + 编译ros工程))。

1、clion设置

文件 -> 设置 -> 构建、执行、部署  -> :

CMake选项:add -DCATKIN_DEVEL_PREFIX:PATH=/home/temp/loam-note/devel

构建目录:/home/temp/loam-note/build

2、开一个窗口启动 roscore

3、再开一个窗口,source一下ROS工程,然后播放数据:

rosbag play --clock /home/data/nsh_indoor_outdoor.bag

note(似乎会影响调试): 将播放速度降低为原来的1/10

rosbag play -r 0.1   --clock /home/data/nsh_indoor_outdoor.bag

或者按空格键暂停。

  推荐不改变播放数据速度,使用空格暂停来辅助调试代码。

 参考:https://www.cnblogs.com/gdut-gordon/p/10643426.html

4、在IDE调试、设置断点、启动相关节点。(多个节点无非就是多个可执行程序)

  最后,如果你的节点执行顺序是这样:roscore -> nodeA ->nodeB

如果你想在IDE调试节点nodeB源代码,很简单,开两个窗口,分别source,启动roscore、nodeA就行了。

CV&DL
原文地址:https://www.cnblogs.com/winslam/p/15013908.html