ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Here is my take on the answer.
Let's say you create a ROS package where you have a script that takes in the sensor data from temperature gage, and sounds the alarm when temperature is critical. In very simple terms here, the targets are the commands to READ_SENSOR and SOUND_ALARM. You build this package, using catkin_make for example, and now you can share this package with a friend's, robot. This robot would then use these two commands to interact with your package.
Think of a "catkin build" (or a "CMake" or a "make" or a "rosbuild") as a tank in the deep woodlands of workspace folders, custom libraries, classes and scripts, and all dependencies. Take your tank and point at the commands or executable files that you want blow out of these woodlands into the real world (run-time environment where users live), by using some sort of teleportation ammunition.
P.S. That's how I understood "targets" at the moment. I may be wrong, and might come back here to update this answer later on as I learn more about it. But for now, that's what I understood from the links posted by @gvdhoorn.