{"id":16139562,"url":"https://github.com/bergercookie/catkin_ws","last_synced_at":"2026-05-02T11:35:23.778Z","repository":{"id":78140109,"uuid":"68381585","full_name":"bergercookie/catkin_ws","owner":"bergercookie","description":"Container repo for packages needed to run multi-robot graphSLAM","archived":false,"fork":false,"pushed_at":"2017-10-25T22:40:15.000Z","size":562,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-12T23:45:59.008Z","etag":null,"topics":["ansible","cmake","cpp","python","ros"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bergercookie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-16T13:23:15.000Z","updated_at":"2017-05-29T08:41:54.000Z","dependencies_parsed_at":"2023-02-28T06:01:19.122Z","dependency_job_id":null,"html_url":"https://github.com/bergercookie/catkin_ws","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fcatkin_ws","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fcatkin_ws/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fcatkin_ws/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fcatkin_ws/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bergercookie","download_url":"https://codeload.github.com/bergercookie/catkin_ws/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526675,"owners_count":20953141,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","cmake","cpp","python","ros"],"created_at":"2024-10-09T23:49:20.426Z","updated_at":"2026-05-02T11:35:23.708Z","avatar_url":"https://github.com/bergercookie.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Software setup example\n\n[![GitPitch](https://gitpitch.com/assets/badge.svg)](https://gitpitch.com/bergercookie/mastert_present/master?grs=github)\n\nContainer repo for packages needed to run single, multi-robot graphSLAM.  It\nincludes a complete example on downloading, setting up and configuring the\ngraphSLAM algorithm.\n\n## System prerequisites\n\nFollowing is information on the machine, as\nwell as on important 3rd party software on the latter, the installation was\ntested on:\n\n- **Computer Model:** MacBook Pro 8,1\n- **Processor Type:** Intel Core i5 @2,3 GHz\n- **Operating System:** Ubuntu 14.04\n\n    It's important that users stick with Ubuntu 14.04 instead\n    of the more recent 16.04 variant. For the latter OSRF supports\n    binary installation of only the \\texttt{ROS Kinetic}, with which in\n    turn most of the utilised ROS packages won't work.\n\n- Versions of notable software\n\n    + **gcc, g++ version:** 4.8.4\n\n    + **Eigen version:**\n\n        Minimum required Eigen version is 3.2.0. If your version is lower than\n        that, either upgrade, or use the Eigen embedded version found in\n        $path_to_mrpt_src/otherlibs/eigen3. For the latter use the following Eigen\n        directive when compiling\n        `cmake $path_to_mrpt_src -DEIGEN_USE_EMBEDDED_VERSION:BOOL=ON`. More on\n        this can be found [here](https://github.com/MRPT/mrpt/issues/325)\n\n\n## Configuration steps\n\n1. Install MRPT from source as explained in the Appendix section of [this\ndocument](http://147.102.51.10:3000/bergercookie/mr-slam-thesis-text/src/master/report.pdf).\n\n2. Setup ROS Jade as instructed in the [official\n   documentation](http://wiki.ros.org/jade/Installation/). Installing ROS\n   Indigo can also be a viable choice but bare in mind that single- and\n   multi-robot simulations were run and tested exclusively on Jade.\n\n   During the time of writing, the `ros-jade-desktop-full` was used. If you aren't\n   interested in running graphSLAM in the Gazebo simulator, you probably can go\n   for the `ros-jade-desktop` variant.\n\n3. Clone [repository of used ROS\n   packages](https://github.com/bergercookie/catkin_ws) **recursively** (yes,\n   we do use Git submodules).\n\n```bash\n\n$ mkdir -p ~/catkin_ws/src # modify this in case of already existing catkin ws\n$ git clone --recursive https://github.com/bergercookie/catkin_ws catkin_ws/src\n\n# in case previous command fails (e.g. due to an internet connection problem)\n# just continue with the setup of submodules:\n$ cd ~/catkin_ws/src\n$ git submodule update --init\n\n```\n\n4. Initialize catkin workspace - Modify .bashrc accordingly\n\n```bash\n# Initialize this catkin workspace - Link to /opt/*/CMakeLists file\n~/catkin_ws/src$ catkin_init_workspace\n\n# Add environment-setting lines in your .bashrc\n$ echo \"source /opt/ros/${ROS_DISTRO}/setup.bash\" \u003e\u003e ~/.bashrc \u0026\u0026 \\\n  echo \"source ~/catkin_ws/devel/setup.bash\" \u003e\u003e ~/.bashrc\n\n# reload bashrc\n$ source ~/.bashrc\n\n```\n\n5. Install required apt packages:\n\n    The following should be installed in the system for the `catkin_make`\n    compilation to be successful:\n\n    - `libspnav-dev`\n    - `libv4l-dev`\n    - `libaria-dev`\n    - `ros-${ROS_DISTRO}-joint-state-publisher`\n\n    Additionally the following packages are needed for the transport of\n    compressed images when using the camera:\n\n    - `ros-${ROS_DISTRO}-image-common`\n    - `ros-${ROS_DISTRO}-image-transport-plugins`\n\n    In case you don't install the ros-*-desktop-full ROS version, the following\n    packages are also needed to be installed via apt:\n\n    - `ros-${ROS_DISTRO}-driver-base`\n    - `ros-${ROS_DISTRO}-pcl-conversions`\n\n6. Test that the MRPT graphslam-engine application works - Execute using the\n   provided sample datasets as described\n   [here](http://www.mrpt.org/list-of-mrpt-apps/application-graphslamengine/).\n   A sample command to execute would be the following:\n\n```bash\n$MRPT_DIR/bin/graphslam-engine \\\n    -i $mrpt/share/mrpt/config_files/graphslam-engine/odometry_2DRangeScans.ini \\\n    -r $mrpt/share/mrpt/datasets/graphslam-engine-demos/action_observations_map/simul.rawlog \\\n    -g $mrpt/share/mrpt/datasets/graphslam-engine-demos/action_observations_map/simul.rawlog.GT.txt \\\n    --2d\n```\n\n7. Test that the mrpt_graphslam_2d ROS wrapper works as expected, use the\n   instructions provided [in the\n   mrpt_graphslam_2d](https://github.com/bergercookie/mrpt_slam/tree/graphslam-devel/mrpt_graphslam_2d)\n   package.\n\n----------\n\n## Notes\n\n- In case you encounter any problem during the aforementioned process or you find\npart of the instructions inaccurate, [open a Github\nissue](https://github.com/bergercookie/catkin_ws/issues)\n\n- In case compilation breaks at the `mrpt_reactivenav_2d` package, *do not\n    compile it at all*. You can do that by adding an empty `CATKIN_IGNORE` file\n    at the root of that package.\n    Version of aforementioned package is going to be pathced in a few days.\n\n- In case you want to keep your code in sync with the latest changes in the\n    remote repositories, users are encouraged to use the\n    [sync_mr_slam.sh](./sync_mr_slam.sh) script which recursively updates mrpt,\n    mr-slam-ws as well as all submodules of the latter.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fcatkin_ws","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbergercookie%2Fcatkin_ws","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fcatkin_ws/lists"}