Skip to content

BuildingForRaspbianStretchOS

Ilya Lavrenov edited this page Jan 22, 2023 · 19 revisions

Build for Raspbian Stretch* OS

NOTE: ARM CPU plugin are supported. The detailed instruction how to build ARM plugin is available in OpenVINO contrib wiki.

Table of content

Hardware Requirements

  • Raspberry Pi* 2 or 3 with Raspbian* Stretch OS (32 or 64-bit).

    NOTE: Despite the Raspberry Pi* CPU is ARMv8, 32-bit OS detects ARMv7 CPU instruction set. The default gcc compiler applies ARMv6 architecture flag for compatibility with lower versions of boards. For more information, run the gcc -Q --help=target command and refer to the description of the -march= option.

You can compile the OpenVINO Runtime for Raspberry Pi* in one of the two ways:

Native Compilation

Native compilation of the OpenVINO Runtime is the most straightforward solution. However, it might take at least one hour to complete on Raspberry Pi* 3.

  1. Install dependencies:
sudo apt-get update
sudo apt-get install -y git cmake scons build-essential
  1. Clone the repositories:
git clone --recurse-submodules --single-branch --branch=master https://github.com/openvinotoolkit/openvino.git 
git clone --recurse-submodules --single-branch --branch=master https://github.com/openvinotoolkit/openvino_contrib.git 
  1. Go to the cloned openvino repository:
cd openvino/
  1. Create a build folder:
mkdir build && cd build/
  1. Build the OpenVINO Runtime:
  • for MYRIAD support only:
    cmake -DCMAKE_BUILD_TYPE=Release \
          -DOPENVINO_EXTRA_MODULES=<OPENVINO_CONTRIB_PATH>/openvino_contrib/modules/arm_plugin \
          -DARM_COMPUTE_SCONS_JOBS=$(nproc --all) \
    .. && cmake --build . --parallel 

Cross Compilation Using Docker*

To cross-compile ARM CPU plugins using pre-configured Dockerfile you can use the following instruction: Build OpenCV, OpenVINO™ and the plugin using pre- configured Dockerfile.

Additional Build Options

  • To build Python API, install libpython3-dev:armhf and python3-pip packages using apt-get; then install numpy and cython python modules via pip3, adding the following options:
    -DENABLE_PYTHON=ON \
    -DPYTHON_EXECUTABLE=/usr/bin/python3.7 \
    -DPYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so \
    -DPYTHON_INCLUDE_DIR=/usr/include/python3.7
Clone this wiki locally