March 2018
Intermediate to advanced
1396 pages
42h 14m
English
ROS nodes can be debugged as regular programs. They run as a process in the operating system and have a PID. Therefore, you can debug them as with any program using standard tools, such as gdb. Similarly, you can check for memory leaks with memcheck or profile the performance of your algorithm with callgrind. However, remember that in order to run a node, you must run the following command:
$ rosrun chapter3_tutorials example1
Unfortunately, you cannot simply run the command through gdb in the following way:
$ gdb rosrun chapter3_tutorials example1
In the following sections, we will explain how to call these tools for an ROS node to overcome this issue. Later, we will see how to add logging messages to our code in ...