Skip to content

Latest commit

 

History

History
92 lines (74 loc) · 5.69 KB

installation.md

File metadata and controls

92 lines (74 loc) · 5.69 KB

Table of Contents

Note: Due to the USB 3.0 translation layer between native hardware and virtual machine, the librealsense team does not recommend or support installation in a VM.

Ubuntu 14.04 LTS Installation

Installation of cameras on Linux is lengthy compared to other supported platforms. Several upstream fixes to the uvcvideo driver have been merged in recent kernel versions, greatly enhancing stability. Once an updated kernel has been installed, one more patch must be applied to the uvcvideo driver with support for several non-standard pixel formats provided by RealSense™ cameras.

Note: Several scripts below invoke wget, git, add-apt-repository which may be blocked by router settings or a firewall. Infrequently, apt-get mirrors or repositories may also timeout. For librealsense users behind an enterprise firewall, configuring the systemwide Ubuntu proxy generally resolves most timeout issues.

  1. Ensure apt-get is up to date
  • sudo apt-get update && sudo apt-get upgrade
  • Note: Use sudo apt-get dist-upgrade, instead of sudo apt-get upgrade, in case you have an older Ubuntu 14.04 version (with deprecated nvidia-331* packages installed), as this prevents the linux 4.4* kernel to compile properly.
  1. Install libusb-1.0 via apt-get
  • sudo apt-get install libusb-1.0-0-dev
  1. glfw3 is not available in apt-get on Ubuntu 14.04. Use included installer script:
  • scripts/install_glfw3.sh
  1. Follow the installation instructions for your desired backend (see below)
  2. We use QtCreator as an IDE for Linux development on Ubuntu
  • Note: QtCreator is presently configured to use the V4L2 backend by default
  • sudo apt-get install qtcreator
  • sudo scripts/install_qt.sh (we also need qmake from the full qt5 distribution)
  • all.pro contains librealsense and all example applications
  • From the QtCreator top menu: Clean => Run QMake => Build
  • Built QtCreator projects will be placed into ./bin/debug or ./bin/release
  1. We also provide a makefile if you'd prefer to use your own favorite text editor
  • make && sudo make install
  • The example executables will build into ./bin

Video4Linux backend

  1. Ensure no cameras are presently plugged into the system.
  2. Install udev rules
  • sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
  • Reboot or run sudo udevadm control --reload-rules && udevadm trigger to enforce the new udev rules
  1. Next, choose one of the following subheadings based on desired machine configuration / kernel version (and remember to complete step 4 after). **Note: ** Multi-camera support is currently NOT supported on 3.19.xx kernels. Please update to 4.4 stable.
  • Updated 4.4 Stable Kernel
    • Run the following script to install necessary dependencies (GCC 4.9 compiler and openssl) and update kernel to v4.4-wily
      • ./scripts/install_dependencies-4.4.sh
    • Run the following script to patch uvcvideo.ko
      • ./scripts/patch-uvcvideo-4.4.sh v4.4-wily (note the argument provided to this version of the script)
      • This script involves shallow cloning the Linux source repository (~100mb), and may take a while
  • (OR) Kernel in 14.04.xx
    • Run the following script to patch uvcvideo.ko
      • ./scripts/patch-uvcvideo-ubuntu-mainline.sh
    • (R200 Only with 3.19.xx Kernel) Install connectivity workaround
      • ./scripts/install-r200-udev-fix.sh
      • This udev fix is not necessary for kernels >= 4.2
      • Use of 3.19.xx Kernel is not recommended.
  • (OR) Kernel in 16.04.xx
    • No action required. Ubuntu 16.04 beta2 and newer already contains the patch
  1. Reload the uvcvideo driver
  • sudo modprobe uvcvideo
  1. Check installation by examining the last 50 lines of the dmesg log:
  • sudo dmesg | tail -n 50
  • The log should indicate that a new uvcvideo driver has been registered. If any errors have been noted, first attempt the patching process again, and then file an issue if not successful on the second attempt (and make sure to copy the specific error in dmesg).

LibUVC backend

Note: This backend has been deprecated on Linux.

The libuvc backend requires that the default linux uvcvideo.ko driver be unloaded before libusb can touch the device. This is because uvcvideo will 'own' a UVC device the moment is is plugged in (user-space applications do not have permission to access the devuce handle). Follow the instructions below to install the udev permissions script.

The libuvc backend has known incompatibilities with some versions of SR300 and R200 firmware (1.0.71.xx series of firmwares are problematic).

  1. Grant appropriate permissions to detach the kernel UVC driver when a device is plugged in:
  • sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
  • sudo cp config/uvc.conf /etc/modprobe.d/
  • Either reboot or run sudo udevadm control --reload-rules && udevadm trigger to enforce the new udev rules
  1. Use the makefile to build the LibUVC backend
  • make BACKEND=LIBUVC
  • sudo make install

Apple OSX Installation

  1. Install XCode 6.0+ via the AppStore
  2. Install the Homebrew package manager via terminal - link
  3. Install pkg-config and libusb via brew:
  • brew install libusb pkg-config
  1. Install glfw3 via brew:
  • brew install homebrew/versions/glfw3

Windows 8.1 & Windows 10 Installation

librealsense should compile out of the box with Visual Studio 2013 Release 5, both Professional and Community editions. Particular C++11 features are known to be incompatible with earlier VS2013 releases due to internal compiler errors.