* Added HINTS for generating PDB files and debugging * Fixed upper case * Keep hint only for Windows OS * build_raspbian.md: Added empty line
6.5 KiB
Build OpenVINO™ Runtime for Windows systems
OpenVINO can be compiled for different architectures on Windows: X64 or ARM64. In order to build for ARM64 architecture, the machine with Windows on ARM is required as only native compilation is supported (see similar documents for details).
Supported configurations:
- Windows 10 x86 64-bit or higher with Visual Studio 2019 or higher build for X64 architecture.
- Windows on ARM (shortly WoA) to build for ARM64 architecture. OpenVINO was validated on Windows DevKit 2023
Software requirements
- CMake 3.13 or higher
- Microsoft Visual Studio 2019 or higher, version 16.3 or later
Note
: Native Microsoft Visual Studio for WoA is available since 2022.
- Python 3.7 - 3.11 for OpenVINO Runtime Python API
Note
: Python for ARM64 is available since 3.11 version.
- [Git for Windows*]
- (Windows on ARM only) LLVM for Windows on ARM (WoA)
Note
: After installation, make sure
clang-clcompiler is available fromPATH.
How to build
Note
: By default, the build enables the OpenVINO Runtime GPU plugin to infer models on your Intel® Processor Graphics. This requires you to download and install the Intel® Graphics Driver for Windows (26.20) driver package before running the build. If you don't want to use the GPU plugin, use the
-DENABLE_INTEL_GPU=OFFCMake build option and skip the installation of the Intel® Graphics Driver.
-
Clone submodules:
git clone https://github.com/openvinotoolkit/openvino.git cd openvino git submodule update --init --recursive(Extra for WoA) To build on Windows on ARM with ARM plugin:
git clone https://github.com/openvinotoolkit/openvino_contrib.git cd openvino_contrib git submodule update --init --recursive -
Create build directory:
mkdir build && cd build -
In the
builddirectory, runcmaketo fetch project dependencies and generate a Visual Studio solution.On Windows x86 64-bits:
cmake -G "Visual Studio 16 2019" -DCMAKE_BUILD_TYPE=Release <openvino>On Windows on ARM for ARM64 architecture:
cmake -G "Visual Studio 16 2019" -DOPENVINO_EXTRA_MODULES=<openvino_contrib>/modules/arm_plugin -DCMAKE_BUILD_TYPE=Release <openvino>HINT: Generating PDB Files and Debugging Your Build
If you intend to generate PDB files and debug your build, it is essential to set the CMake build type appropriately. You should utilize one of the following CMake build type options:-DCMAKE_BUILD_TYPE=RelWithDebInfo: This option generates PDB files with release information, making it suitable for debugging optimized builds.-DCMAKE_BUILD_TYPE=Debug: This option generates PDB files optimized for debugging, providing comprehensive debugging information.
-
Build generated solution in Visual Studio or run
cmake --build . --config Release --verbose -j8to build from the command line. Be aware that this process may take some time. -
Before running the samples, add paths to the Threading Building Blocks (TBB) binaries used for the build to the
%PATH%environment variable. By default, TBB binaries are downloaded by the CMake-based script to the<openvino>/temp/tbb/binfolder.
Additional Build Options
-
Internal JIT GEMM implementation is used by default.
-
Threading Building Blocks (TBB) is used by default. To build Inference Engine with OpenMP threading, set the
-DTHREADING=OMPoption. -
Required versions of TBB and OpenCV packages are downloaded automatically by the CMake-based script. If you want to use the automatically-downloaded packages but you have already installed TBB or OpenCV packages configured in your environment, you may need to clean the
TBBROOTandOpenCV_DIRenvironment variables before running thecmakecommand; otherwise they won'tnbe downloaded and the build may fail if incompatible versions were installed. -
If the CMake-based build script can not find and download the OpenCV package that is supported on your platform, or if you want to use a custom build of the OpenCV library, refer to the Use Custom OpenCV Builds section for details.
-
To build the OpenVINO Runtime Python API:
- First, install all additional packages (e.g., cython and opencv) listed in the file:
pip install -r <openvino>\src\bindings\python\src\compatibility\openvino\requirements-dev.txt - Second, enable the
-DENABLE_PYTHON=ONin the CMake (Step #4) option above. To specify an exact Python version, use the following options:-DPYTHON_EXECUTABLE="C:\Program Files\Python11\python.exe" ^ -DPYTHON_LIBRARY="C:\Program Files\Python11\libs\python11.lib" ^ -DPYTHON_INCLUDE_DIR="C:\Program Files\Python11\include" - To build a wheel package (.whl), enable the
-DENABLE_WHEEL=ONoption in the CMake step above (Step 4), and install requirements:pip install -r <openvino source tree>\src\bindings\python\wheel\requirements-dev.txt - After the build process finishes, export the newly built Python libraries to the user environment variables:
or install the wheel with pip:
set PYTHONPATH=<openvino_repo>/bin/<arch>/Release/python;%PYTHONPATH% set OPENVINO_LIB_PATHS=<openvino_repo>/bin/<arch>/Release;%OPENVINO_LIB_PATH%pip install build/wheel/openvino-2023.0.0-9612-cp11-cp11-win_arm64.whl
- First, install all additional packages (e.g., cython and opencv) listed in the file:
-
OpenVINO runtime compilation options:
-DENABLE_OV_ONNX_FRONTEND=ONenables the building of the ONNX importer.
Building OpenVINO with Ninja* Build System
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\vcvars64.bat"
cmake -G Ninja -Wno-dev -DCMAKE_BUILD_TYPE=Release ..
cmake --build . --config Release