# Jetson TK1 Notes

### Requirements

- CMake 3.0+

#### CMake

Unfortunately the version of CMake packaged for Linux For Tegra (L4T) R21.5 is too old to build Cinder, so a newer one must be compiled from source. Perform the following from a temporary directory:

    sudo apt-get install g++
    wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz
    tar xvf cmake-cmake-3.7.2.tar.gz
    cd cmake-3.7.2
    ./configure --prefix=/opt/local
    make -j 4
    sudo make install

### Cinder Dependencies

    sudo apt-get install libxcursor-dev \
    libxrandr-dev \
    libxinerama-dev \
    libxi-dev \
    libgl1-mesa-dev \
    libgles2-mesa-dev \
    zlib1g-dev \
    libfontconfig1-dev \
    libsndfile1 \
    libsndfile1-dev \
    libpulse-dev \
    libasound2-dev \
    libcurl4-gnutls-dev \
    libgstreamer1.0-dev \
    libgstreamer-plugins-base1.0-dev \
    gstreamer1.0-libav \
    gstreamer1.0-alsa \
    gstreamer1.0-pulseaudio

libmpg123-dev - L4T R21.5 does not have the package `libmpg123-dev`. The contents of the package must be built and installed locally. Perform the following from a temporary directory:

    wget https://www.mpg123.de/download/mpg123-1.24.0.tar.bz2
    tar xvf mpg123-1.24.0.tar.bz2
    cd mpg123-1.24.0
    ./configure --prefix=/opt/local
    make -j 4
    sudo make install

The example above uses `/opt/local` because the `find_package` scripts for CMake are set to look there for custom libraries.

# Building Cinder

### Fetching and Building Cinder

    git clone --recursive https://github.com/cinder/Cinder.git
    cd Cinder
    mkdir build && cd build
    cmake ..
    make -j 4

# Building and Running BasicApp

### Building

    cd samples/BasicApp/proj/cmake
    mkdir build && cd build
    cmake ..
    make

### Running

Starting from `samples/BasicApp/proj/cmake/build`:

    ./Debug/BasicApp/BasicApp