ROS has several tools for detecting potential problems in all the elements of a given package. Just move with roscd to the package you want to analyze. Then, run roswtf. For chapter3_tutorials, we have the following output. Note that if you have something running, the ROS graph will be analyzed too. We have run the roslaunch chapter3_tutorials example6.launch command, which yields an output similar to the following screenshot:
In general, we should expect no error or warning, but even then some of them are innocuous. In the previous screenshot, we can see that roswtf does not detect any error; it only issues a warning about pip, which may sometimes generate problems with the Python code installed in the system. Note that the purpose of roswtf is to signal potential problems; we are responsible for checking whether they are real or meaningless ones, as in the previous case.
Another useful tool is catkin_lint, which helps to diagnose errors with catkin, usually in the CMakeLists.txt and package.xml files. For chapter3_tutorials, we have the following output:
$ catkin_lint -W2 --pkg chapter3_tutorials
With -W2, we see warnings that can be usually ignored, such as the ones shown in the following screenshot:
Please be aware that you might need to install catkinlint separately; it is usually contained in the package python-catkin-lint.