#!/bin/bash ############################################################################## # Example command to build the Raspbian target. ############################################################################## # # This script shows how one can build a Caffe2 binary for raspbian. The build # is essentially much similar to a host build, with one additional change # which is to specify -mfpu=neon for optimized speed. 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 dependencies. echo "Installing dependencies." sudo apt-get install \ cmake \ libgflags-dev \ libgoogle-glog-dev \ libprotobuf-dev \ libpython-dev \ python-pip \ python-numpy \ protobuf-compiler \ python-protobuf # python dependencies sudo pip install hypothesis # Now, actually build the raspbian target. echo "Building caffe2" cd $BUILD_ROOT # Note: you can add more dependencies above if you need libraries such as # leveldb, lmdb, etc. cmake "$CAFFE2_ROOT" \ -DCMAKE_VERBOSE_MAKEFILE=1 \ -DCAFFE2_CPU_FLAGS="-mfpu=neon -mfloat-abi=hard" \ || exit 1 # Note: while Raspberry pi has 4 cores, running too many builds in parallel may # cause out of memory errors so we will simply run -j 2 only. make -j 2 || exit 1