
Creating and building a ROS package
Before we begin to design and build our robot model in simulation, we should create our first ROS package. In Chapter 1, Getting Started with ROS, we created a ROS catkin workspace under /home/<username>/catkin_ws
. The structure of a catkin workspace looks like this:
catkin_ws/ -- WORKSPACE build/ -- BUILD SPACE devel/ -- DEVEL SPACE src/ -- SOURCE SPACE CMakeLists.txt -- 'Toplevel' CMake file, provided by catkin
Tip
Make sure that you have source ~/catkin_ws/devel/setup.bash
in your .bashrc
file, or this command is entered at the terminal window prompt.
We begin by moving to your catkin workspace source directory:
$ cd ~/catkin_ws/src
Now, let's create our first ROS package, ros_robotics
:
$ catkin_create_pkg ros_robotics
This command will create a /ros_robotics
directory under the ~/catkin_ws/src
directory. The /ros_robotics
directory will contain a package.xml
file and a CMakeLists.txt
file. These files contain information generated from the $ catkin_create_pkg
command execution.
Note
The catkin_create_pkg syntax
catkin_create_pkg
requires a unique package name and, optionally, a list of dependencies for the package. The command format to create it is as follows:
$ catkin_create_pkg <package_name> [depend1] [depend2] [depend3]
[depend1]
, [depend2]
, and [depend3]
specify software packages that are required to be present for this software package to be made.
We will not identify any dependencies for our ros_robotics
package at this point.
Next, build the packages in the catkin workspace:
$ cd ~/catkin_ws $ catkin_make
After the workspace has been built to include the ros_robotics
package, the ~/catkin_ws/devel
subdirectory will have a structure similar to the structure under the /opt/ros/indigo
directory.