This is a step-by-step guide to install and build all the prerequisites for running this module on Ubuntu 16.04. You might want to skip some of them if your system is already partially installed.
-
Add ROS to sources.list.
echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt update
-
Install gazebo with ROS.
sudo apt install ros-kinetic-desktop-full # Source ROS source /opt/ros/kinetic/setup.bash
Full installation of ROS Kinetic comes with Gazebo 7.
If you are using different version of Gazebo,
please make sure install ros-gazebo related packages
For Gazebo 8,
sudo apt install ros-kinetic-gazebo8-*
For Gazebo 9,
sudo apt install ros-kinetic-gazebo9-*
-
Initialize rosdep.
rosdep init rosdep update
-
Install catkin and create your catkin workspace directory.
sudo apt install python-catkin-tools mkdir -p ~/catkin_ws/src
-
Install module dependencies (pointcloud library and octomap).
sudo apt install libpcl1 ros-kinetic-pcl-ros* ros-kinetic-yaml-*
-
Clone this repository in your catkin workspace in order to build the node.
cd ~/catkin_ws/src git clone https://github.com/Shubham-Sahoo/Map-merge.git
-
Actually build the icp-matching node.
catkin build -w ~/catkin_ws
Note that you can build the node in release mode this way:
catkin build -w ~/catkin_ws --cmake-args -DCMAKE_BUILD_TYPE=Release
-
Source the catkin setup.bash from your catkin workspace.
source ~/catkin_ws/devel/setup.bash
In the following section we guide you through installing and running a Gazebo simulation.
-
Clone the repository and its submodules (it may take some time).
cd ~/catkin_ws/src git clone https://github.com/fouliex/MapAWorldWithSlamAndACustomRobot.git
-
Build the project
cd ~/catkin_ws catkin_make source ~/catkin_ws/devel/setup.bash
Complete list is available on Map_a_World_with_SLAM