6c5fa72c7675dc288c409a90f532cd2c0577fc38
[platform/upstream/dldt.git] / scripts / setupvars / setupvars.sh
1 #!/bin/bash
2
3 # Copyright (c) 2018-2020 Intel Corporation
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #      http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16
17 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
18 BASE_DIR="$( dirname "$SCRIPT_DIR" )"
19
20 INSTALLDIR="${BASE_DIR}"
21
22
23 export INTEL_OPENVINO_DIR="$INSTALLDIR"
24 export INTEL_CVSDK_DIR="$INTEL_OPENVINO_DIR"
25
26 # parse command line options
27 while [[ $# -gt 0 ]]
28 do
29 key="$1"
30 case $key in
31     -pyver)
32     python_version=$2
33     echo python_version = "${python_version}"
34     shift
35     ;;
36     *)
37     # unknown option
38     ;;
39 esac
40 shift
41 done
42
43 if [ -e $INSTALLDIR/deployment_tools/inference_engine ]; then
44     export InferenceEngine_DIR=$INTEL_OPENVINO_DIR/deployment_tools/inference_engine/share
45     system_type=$(\ls $INTEL_OPENVINO_DIR/deployment_tools/inference_engine/lib/)
46     IE_PLUGINS_PATH=$INTEL_OPENVINO_DIR/deployment_tools/inference_engine/lib/$system_type
47
48     if [[ -e ${IE_PLUGINS_PATH}/arch_descriptions ]]; then
49         export ARCH_ROOT_DIR=${IE_PLUGINS_PATH}/arch_descriptions
50     fi
51
52     export HDDL_INSTALL_DIR=$INSTALLDIR/deployment_tools/inference_engine/external/hddl
53     if [[ "$OSTYPE" == "darwin"* ]]; then
54         export DYLD_LIBRARY_PATH=$INSTALLDIR/deployment_tools/inference_engine/external/mkltiny_mac/lib:$INSTALLDIR/deployment_tools/inference_engine/external/tbb/lib:${IE_PLUGINS_PATH}${DYLD_LIBRARY_PATH:+:DYLD_LIBRARY_PATH}
55         export LD_LIBRARY_PATH=$INSTALLDIR/deployment_tools/inference_engine/external/mkltiny_mac/lib:$INSTALLDIR/deployment_tools/inference_engine/external/tbb/lib:${IE_PLUGINS_PATH}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
56     else
57         export LD_LIBRARY_PATH=$HDDL_INSTALL_DIR/lib:$INSTALLDIR/deployment_tools/inference_engine/external/gna/lib:$INSTALLDIR/deployment_tools/inference_engine/external/mkltiny_lnx/lib:$INSTALLDIR/deployment_tools/inference_engine/external/tbb/lib:${IE_PLUGINS_PATH}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
58     fi
59
60     export KMB_INSTALL_DIR=$INSTALLDIR/deployment_tools/inference_engine/external/hddl_unite
61     export LD_LIBRARY_PATH=$KMB_INSTALL_DIR/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
62 fi
63
64 if [ -e $INSTALLDIR/deployment_tools/ngraph ]; then
65     export LD_LIBRARY_PATH=$INSTALLDIR/deployment_tools/ngraph/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
66     export ngraph_DIR=$INSTALLDIR/deployment_tools/ngraph/cmake
67 fi
68
69 if [ -e "$INSTALLDIR/opencv" ]; then
70     if [ -f "$INSTALLDIR/opencv/setupvars.sh" ]; then
71         source "$INSTALLDIR/opencv/setupvars.sh"
72     else
73         export OpenCV_DIR="$INSTALLDIR/opencv/share/OpenCV"
74         export LD_LIBRARY_PATH="$INSTALLDIR/opencv/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
75         export LD_LIBRARY_PATH="$INSTALLDIR/opencv/share/OpenCV/3rdparty/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
76     fi
77 fi
78
79
80 if [ -f "$INTEL_OPENVINO_DIR/data_processing/dl_streamer/bin/setupvars.sh" ]; then
81     source "$INTEL_OPENVINO_DIR/data_processing/dl_streamer/bin/setupvars.sh"
82 fi
83
84 export PATH="$INTEL_OPENVINO_DIR/deployment_tools/model_optimizer${PATH:+:$PATH}"
85 export PYTHONPATH="$INTEL_OPENVINO_DIR/deployment_tools/model_optimizer${PYTHONPATH:+:$PYTHONPATH}"
86
87
88 if [ -e $INTEL_OPENVINO_DIR/deployment_tools/open_model_zoo/tools/accuracy_checker ]; then
89     export PYTHONPATH="$INTEL_OPENVINO_DIR/deployment_tools/open_model_zoo/tools/accuracy_checker:$PYTHONPATH"
90 fi
91
92 if [ -e $INTEL_OPENVINO_DIR/deployment_tools/tools/post_training_optimization_toolkit ]; then
93     export PYTHONPATH="$INTEL_OPENVINO_DIR/deployment_tools/tools/post_training_optimization_toolkit:$PYTHONPATH"
94 fi
95
96 if [ -z "$python_version" ]; then
97     if command -v python3.7 >/dev/null 2>&1; then
98         python_version=3.7
99         python_bitness=$(python3.7 -c 'import sys; print(64 if sys.maxsize > 2**32 else 32)')
100     elif command -v python3.6 >/dev/null 2>&1; then
101         python_version=3.6
102         python_bitness=$(python3.6 -c 'import sys; print(64 if sys.maxsize > 2**32 else 32)')
103     elif command -v python3.5 >/dev/null 2>&1; then
104         python_version=3.5
105         python_bitness=$(python3.5 -c 'import sys; print(64 if sys.maxsize > 2**32 else 32)')
106     elif command -v python3.4 >/dev/null 2>&1; then
107         python_version=3.4
108         python_bitness=$(python3.4 -c 'import sys; print(64 if sys.maxsize > 2**32 else 32)')
109     elif command -v python2.7 >/dev/null 2>&1; then
110         python_version=2.7
111     elif command -v python >/dev/null 2>&1; then
112         python_version=$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')
113     fi
114 fi
115
116 OS_NAME=""
117 if command -v lsb_release >/dev/null 2>&1; then
118     OS_NAME=$(lsb_release -i -s)
119 fi
120
121 if [ "$python_bitness" != "" ] && [ "$python_bitness" != "64" ] && [ "$OS_NAME" != "Raspbian" ]; then
122     echo "[setupvars.sh] 64 bitness for Python" $python_version "is requred"
123 fi
124
125 if [ ! -z "$python_version" ]; then
126     if [ "$python_version" != "2.7" ]; then
127         # add path to OpenCV API for Python 3.x
128         export PYTHONPATH="$INTEL_OPENVINO_DIR/python/python3:$PYTHONPATH"
129     fi
130     # add path to Inference Engine Python API
131     export PYTHONPATH="$INTEL_OPENVINO_DIR/python/python$python_version:$PYTHONPATH"
132 fi
133
134 echo "[setupvars.sh] OpenVINO environment initialized"