From e0f34d73bde4d7241f037b0157573e267e084ff8 Mon Sep 17 00:00:00 2001 From: matlabbe Date: Wed, 28 Jun 2017 15:34:21 -0400 Subject: [PATCH] Updated Installation (markdown) --- Installation.md | 111 +++++++++++++++++++++++++----------------------- 1 file changed, 57 insertions(+), 54 deletions(-) diff --git a/Installation.md b/Installation.md index 00e5805..e9c3b0c 100644 --- a/Installation.md +++ b/Installation.md @@ -6,6 +6,8 @@ This page shows how to install RTAB-Map on different systems. For previous relea * [Standalone](#standalone) * [Ubuntu](#ubuntu) * [Docker](#docker) + * [Image RTAB-Map Desktop](#docker) + * [Image RTAB-Map Tango](#docker) * [Raspberry Pi](#raspberrypi) * [Mac OS X](#macosx) * [Windows](#windows) @@ -116,65 +118,66 @@ $ sudo make install ## Docker Docker * Docker repository: [intolab3it/rtabmap](https://hub.docker.com/r/introlab3it/rtabmap/) - * RTAB-Map Desktop (ubuntu 16.04) - ```bash - $ docker pull introlab3it/rtabmap:latest +#### RTAB-Map Desktop (ubuntu 16.04) + +```bash +$ docker pull introlab3it/rtabmap:latest +``` +* To be able to run rtabmap, we should install opengl support in the image. To do so, visit [this tutorial](http://gernotklingler.com/blog/howto-get-hardware-accelerated-opengl-support-docker/) for details. Replace `FROM ubuntu` by `FROM introlab3it/rtabmap`. +1. Create a `Dockerfile` (example on Ubuntu host machine, choose GPU driver used on host machine): + * NVIDIA driver: + 1. Download on [nvidia website](http://www.nvidia.com/object/unix.html) the same driver (e.g., NVIDIA-Linux-x86_64-375.39.run) than the one installed on the host computer + 2. Rename it to NVIDIA_DRIVER.run + ```docker + FROM introlab3it/rtabmap + + RUN apt-get update + RUN apt-get install -y mesa-utils + + # install nvidia driver + RUN apt-get install -y binutils kmod + ADD NVIDIA-DRIVER.run /tmp/NVIDIA-DRIVER.run + RUN sh /tmp/NVIDIA-DRIVER.run -a -N --ui=none --no-kernel-module + RUN rm /tmp/NVIDIA-DRIVER.run ``` - * To be able to run rtabmap, we should install opengl support in the image. To do so, visit [this tutorial](http://gernotklingler.com/blog/howto-get-hardware-accelerated-opengl-support-docker/) for details. Replace `FROM ubuntu` by `FROM introlab3it/rtabmap`. - 1. Create a `Dockerfile` (example on Ubuntu host machine, choose GPU driver used on host machine): - * NVIDIA driver: - 1. Download on [nvidia website](http://www.nvidia.com/object/unix.html) the same driver (e.g., NVIDIA-Linux-x86_64-375.39.run) than the one installed on the host computer - 2. Rename it to NVIDIA_DRIVER.run - ```docker - FROM introlab3it/rtabmap + * Open Source driver: + ```docker + FROM introlab3it/rtabmap - RUN apt-get update - RUN apt-get install -y mesa-utils + RUN apt-get update + RUN apt-get install -y mesa-utils + RUN apt-get install -y xserver-xorg-video-all + ``` +2. Build image: + ```bash + $ docker build -t rtabmap3d . + ``` +3. Allow connections to X server + ```bash + $ xhost + + ``` +4. Run rtabmap! + ```bash + $ docker run --privileged -e "DISPLAY=unix$DISPLAY" -v="/tmp/.X11-unix:/tmp/.X11-unix:rw" -i -t --rm rtabmap3d rtabmap + ``` - # install nvidia driver - RUN apt-get install -y binutils kmod - ADD NVIDIA-DRIVER.run /tmp/NVIDIA-DRIVER.run - RUN sh /tmp/NVIDIA-DRIVER.run -a -N --ui=none --no-kernel-module - RUN rm /tmp/NVIDIA-DRIVER.run - ``` - * Open Source driver: - ```docker - FROM introlab3it/rtabmap - - RUN apt-get update - RUN apt-get install -y mesa-utils - RUN apt-get install -y xserver-xorg-video-all - ``` - 2. Build image: - ```bash - $ docker build -t rtabmap3d . - ``` - 3. Allow connections to X server - ```bash - $ xhost + - ``` - 4. Run rtabmap! - ```bash - $ docker run --privileged -e "DISPLAY=unix$DISPLAY" -v="/tmp/.X11-unix:/tmp/.X11-unix:rw" -i -t --rm rtabmap3d rtabmap - ``` - - * RTAB-Map Tango (APK) +#### RTAB-Map Tango (APK) +```bash +$ docker pull introlab3it/rtabmap:tango +``` +Note that `arm64-v8a` APK contains both `armeabi-v7a` and `arm64-v8a` binaries. +* Install APK, 2 choices: + 1. Copy file on host computer then install it with `adb` from there: + ```bash + $ docker run --name=rtabmap-tango introlab3it/rtabmap:tango + $ docker cp rtabmap-tango:/root/rtabmap-tango/build/arm64-v8a/app/android/bin/RTABMap-debug.apk . + $ docker rm rtabmap-tango # cleanup container + $ adb install -r RTABMap-debug.apk + ``` + 2. Call `adb` from container: ```bash - $ docker pull introlab3it/rtabmap:tango + $ docker run --privileged -i -t --rm -v /dev/bus/usb:/dev/bus/usb introlab3it/rtabmap:tango adb install -r rtabmap-tango/build/arm64-v8a/app/android/bin/RTABMap-debug.apk ``` - Note that `arm64-v8a` APK contains both `armeabi-v7a` and `arm64-v8a` binaries. - * Install APK, 2 choices: - 1. Copy file on host computer then install it with `adb` from there: - ```bash - $ docker run --name=rtabmap-tango introlab3it/rtabmap:tango - $ docker cp rtabmap-tango:/root/rtabmap-tango/build/arm64-v8a/app/android/bin/RTABMap-debug.apk . - $ docker rm rtabmap-tango # cleanup container - $ adb install -r RTABMap-debug.apk - ``` - 2. Call `adb` from container: - ```bash - $ docker run --privileged -i -t --rm -v /dev/bus/usb:/dev/bus/usb introlab3it/rtabmap:tango adb install -r rtabmap-tango/build/arm64-v8a/app/android/bin/RTABMap-debug.apk - ```