2 # Copyright (C) 2018 Intel Corporation
3 # SPDX-License-Identifier: Apache-2.0
9 if [ "$params" == "-y" ]; then
14 read -p "Add third-party Nux Dextop repository and install FFmpeg package (y) / Skip this step (N)" yn
22 # install dependencies
23 if [ -f /etc/lsb-release ]; then
26 if [ "$host_cpu" = "x86_64" ]; then
27 x86_64_specific_packages="gcc-multilib g++-multilib"
29 x86_64_specific_packages=""
33 sudo -E apt-get install -y \
41 $x86_64_specific_packages \
58 gstreamer1.0-plugins-base \
61 if apt-cache search --names-only '^libpng12-dev'| grep -q libpng12; then
62 sudo -E apt-get install -y libpng12-dev
64 sudo -E apt-get install -y libpng-dev
66 elif [ -f /etc/redhat-release ]; then
68 sudo -E yum install -y centos-release-scl epel-release
69 sudo -E yum install -y \
92 libstdc++-static.i686 \
99 gstreamer1-plugins-base
101 # Python 3.6 for Model Optimizer
102 sudo -E yum install -y rh-python36
103 source scl_source enable rh-python36
106 echo "FFmpeg is required for processing audio and video streams with OpenCV. Please select your preferred method for installing FFmpeg:"
108 echo "Option 1: Allow installer script to add a third party repository, Nux Dextop (http://li.nux.ro/repos.html), which contains FFmpeg. FFmpeg rpm package will be installed from this repository. "
109 echo "WARNING: This repository is NOT PROVIDED OR SUPPORTED by CentOS."
110 echo "Once added, this repository will be enabled on your operating system and can thus receive updates to all packages installed from it. "
112 echo "Consider the following ways to prevent unintended 'updates' from this third party repository from over-writing some core part of CentOS:"
113 echo "a) Only enable these archives from time to time, and generally leave them disabled. See: man yum"
114 echo "b) Use the exclude= and includepkgs= options on a per sub-archive basis, in the matching .conf file found in /etc/yum.repos.d/ See: man yum.conf"
115 echo "c) The yum Priorities plug-in can prevent a 3rd party repository from replacing base packages, or prevent base/updates from replacing a 3rd party package."
117 echo "Option 2: Skip FFmpeg installation."
121 sudo -E rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
122 sudo -E yum install -y ffmpeg
124 echo "FFmpeg installation skipped. You may build FFmpeg from sources as described here: https://trac.ffmpeg.org/wiki/CompilationGuide/Centos"
127 elif [ -f /etc/os-release ] && grep -q "raspbian" /etc/os-release; then
130 sudo -E apt-get install -y \
152 gstreamer1.0-plugins-base \
155 if apt-cache search --names-only '^libpng12-dev'| grep -q libpng12; then
156 sudo -E apt-get install -y libpng12-dev
158 sudo -E apt-get install -y libpng-dev
161 echo "Unknown OS, please install build dependencies manually"
164 # cmake 3.13 or higher is required to build OpenVINO
165 current_cmake_version=$(cmake --version | sed -ne 's/[^0-9]*\(\([0-9]\.\)\{0,4\}[0-9][^.]\).*/\1/p')
166 required_cmake_ver=3.13
167 if [ ! "$(printf '%s\n' "$required_cmake_ver" "$current_cmake_version" | sort -V | head -n1)" = "$required_cmake_ver" ]; then
168 wget "https://github.com/Kitware/CMake/releases/download/v3.18.4/cmake-3.18.4.tar.gz"
169 tar xf cmake-3.18.4.tar.gz
170 (cd cmake-3.18.4 && ./bootstrap --parallel="$(nproc --all)" && make --jobs="$(nproc --all)" && sudo make install)
171 rm -rf cmake-3.18.4 cmake-3.18.4.tar.gz