#!/bin/bash ############################################################################## # Example command to build Caffe2 on Tegra X1. ############################################################################## # # This script shows how one can build a Caffe2 binary for NVidia's TX1. # The build script assumes that you have the most recent libraries installed # via the JetPack toolkit available at # https://developer.nvidia.com/embedded/jetpack # and it assumes that we are starting from a fresh system after the jetpack # installation. If you have already installed some of the dependencies, you # may be able to skip quite a few of the apt-get installs. CAFFE2_ROOT="$( cd "$(dirname -- "$0")"/.. ; pwd -P)" echo "Caffe2 codebase root is: $CAFFE2_ROOT" BUILD_ROOT=${BUILD_ROOT:-"$CAFFE2_ROOT/build"} mkdir -p $BUILD_ROOT echo "Build Caffe2 raspbian into: $BUILD_ROOT" # obtain necessary dependencies echo "Installing dependencies." sudo apt-get install \ cmake \ libgflags-dev \ libgoogle-glog-dev \ libprotobuf-dev \ protobuf-compiler # obtain optional dependencies that are usually useful to have. echo "Installing optional dependencies." sudo apt-get install \ libpython-dev \ python-numpy \ python-pip \ python-protobuf # Obtain python hypothesis, which Caffe2 uses for unit testing. Note that # the one provided by apt-get is quite old so we install it via pip sudo pip install hypothesis # Now, actually build the android target. echo "Building caffe2" cd $BUILD_ROOT # CUDA_USE_STATIC_CUDA_RUNTIME needs to be set to off so that opencv can be # properly used. Otherwise, opencv will complain that opencv_dep_cudart cannot # be found. cmake "$CAFFE2_ROOT" -DCUDA_USE_STATIC_CUDA_RUNTIME=OFF \ || exit 1 make -j 4 || exit 1