Raspbian* Bullseye 用オープンソース OpenVINO™ を構築するための回避策の手順
-
Edited openvino/ngraph/cmake/external_protobuf.cmake file and changed the following code at ~ lines 26-30:
if (MSVC)
set(protobuf_MSVC_STATIC_RUNTIME OFF CACHE BOOL "")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error -latomic")
endif()
-
Used the following configuration but the compilation still failed:
CFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" \
CXXFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" \
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/opt/intel/openvino \
-DENABLE_MKL_DNN=OFF \
-DENABLE_CLDNN=OFF \
-DENABLE_GNA=OFF \
-DENABLE_SSE42=OFF \
-DTHREADING=SEQ \
-DENABLE_OPENCV=OFF \
-DNGRAPH_PYTHON_BUILD_ENABLE=ON \
-DNGRAPH_ONNX_IMPORT_ENABLE=ON \
-DENABLE_PYTHON=ON \
-DPYTHON_EXECUTABLE=$(which python3.9) \
-DPYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.9m.so \
-DPYTHON_INCLUDE_DIR=/usr/include/python3.9 \
-DCMAKE_CXX_FLAGS=-latomic \
-DOPENCV_EXTRA_EXE_LINKER_FLAGS=-latomic ..
メモ |
OpenVINO™は Raspbian Bullseye での動作は検証されていません。現在インテルでは Raspbian Buster 32 ビットのみがサポートされています。 Github コミュニティーが提供する以下の構成は、Raspbian Bullseye のソースからOpenVINO™を構築できるようにする回避策を構成しています。この回避策を実行した後も問題が発生する可能性があります。 |
-
Debian リポジトリーで既に利用可能libprotobufisため、OpenVINO™内の protobuf コンパイルを無効にします:-DNGRAPH_USE_SYSTEM_PROTOBUF=ON -DProtobuf_INCLUDE_DIR=/usr/include
-
ONNX_IMPORTは必須でないため、cmake で失敗するので無効にする :-DNGRAPH_ONNX_IMPORT_ENABLE=OFF
-
追加の依存関係のインストール:sudo apt-get install cython3 libprotobuf-dev
-
メモリ使用量を減らすために、make -j1で行います。
-
Rasbian Bullseye で Python* 3.9 に付属するlibpython3.9..soの静的ライブラリーを使用する:-DPYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.9.so
-
完全な構成:
LDFLAGS="-L/usr/lib/gcc/arm-linux-gnueabihf/10/ -latomic" \
CFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" \
CXXFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" \
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/opt/intel/openvino \
-DENABLE_MKL_DNN=OFF \
-DENABLE_CLDNN=OFF \
-DENABLE_GNA=OFF \
-DENABLE_SSE42=OFF \
-DTHREADING=SEQ \
-DENABLE_OPENCV=OFF \
-DNGRAPH_PYTHON_BUILD_ENABLE=ON \
-DNGRAPH_USE_SYSTEM_PROTOBUF=ON \
-DProtobuf_INCLUDE_DIR=/usr/include \
-DNGRAPH_ONNX_IMPORT_ENABLE=OFF \
-DENABLE_PYTHON=ON \
-DPYTHON_EXECUTABLE=$(which python3.9) \
-DPYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.9.so \
-DPYTHON_INCLUDE_DIR=/usr/include/python3.9 \
-DCMAKE_CXX_FLAGS=-latomic ..