From: Yongxin Liu <[email protected]>
1) Added submodules for NPU Plugin: level-zero, level-zero-npu-extensions
and yaml-cpp.
2) Removed the hardcoded -DENABLE_INTEL_NPU=OFF. Add a new
PACKAGECONFIG option intel-npu to toggle NPU plugin support.
3) Included a patch file
("0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch")
to address GCC15 build errors by explicitly including "<cstdint>" where
necessary.
4) Fix debug source paths in generated NPU dispatcher sources.
The Intel NPU plugin file will be installed to
"/usr/lib64/openvino-2025.3.0/libopenvino_intel_npu_plugin.so".
Signed-off-by: Yongxin Liu <[email protected]>
---
...el-NPU-plugin-build-issue-with-GCC15.patch | 48 +++++++++++++++++++
.../openvino-inference-engine_2025.3.0.bb | 17 ++++++-
2 files changed, 64 insertions(+), 1 deletion(-)
create mode 100644
recipes-core/opencv/files/0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch
diff --git
a/recipes-core/opencv/files/0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch
b/recipes-core/opencv/files/0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch
new file mode 100644
index 0000000..8867067
--- /dev/null
+++
b/recipes-core/opencv/files/0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch
@@ -0,0 +1,48 @@
+From 34ed105a39faf7a68b22c7844e700c501277aa8f Mon Sep 17 00:00:00 2001
+From: Yongxin Liu <[email protected]>
+Date: Wed, 4 Feb 2026 13:27:57 +0800
+Subject: [PATCH] Fix intel NPU plugin build issue with GCC15.
+
+Fix:
+openvino-inference-engine/2025.3.0/sources/openvino-inference-engine-2025.3.0/src/plugins/intel_npu/tools/protopipe/src/graph.hpp:40:5:
+error: 'uint64_t' does not name a type [-Wtemplate-body]
+ 40 | uint64_t operator()(const WeakHandle<T>& handle) const {
+ | ^~~~~~~~
+
+Reference: https://gcc.gnu.org/gcc-15/porting_to.html
+
+Upstream-Status: Pending
+
+Signed-off-by: Yongxin Liu <[email protected]>
+---
+ src/plugins/intel_npu/tools/protopipe/src/graph.hpp | 1 +
+ src/plugins/intel_npu/tools/protopipe/src/scenario/criterion.hpp | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/plugins/intel_npu/tools/protopipe/src/graph.hpp
b/src/plugins/intel_npu/tools/protopipe/src/graph.hpp
+index 66aeccbe156..bf599071c54 100644
+--- a/src/plugins/intel_npu/tools/protopipe/src/graph.hpp
++++ b/src/plugins/intel_npu/tools/protopipe/src/graph.hpp
+@@ -12,6 +12,7 @@
+ #include <unordered_map>
+ #include <unordered_set>
+ #include <vector>
++#include <cstdint>
+
+ #include "utils/error.hpp"
+
+diff --git a/src/plugins/intel_npu/tools/protopipe/src/scenario/criterion.hpp
b/src/plugins/intel_npu/tools/protopipe/src/scenario/criterion.hpp
+index 28b440a7b3b..0fb05fb1175 100644
+--- a/src/plugins/intel_npu/tools/protopipe/src/scenario/criterion.hpp
++++ b/src/plugins/intel_npu/tools/protopipe/src/scenario/criterion.hpp
+@@ -6,6 +6,7 @@
+ #pragma once
+
+ #include <memory>
++#include <cstdint>
+
+ struct ITermCriterion {
+ using Ptr = std::shared_ptr<ITermCriterion>;
+--
+2.46.2
+
diff --git a/recipes-core/opencv/openvino-inference-engine_2025.3.0.bb
b/recipes-core/opencv/openvino-inference-engine_2025.3.0.bb
index d2d1759..9fe0cf0 100644
--- a/recipes-core/opencv/openvino-inference-engine_2025.3.0.bb
+++ b/recipes-core/opencv/openvino-inference-engine_2025.3.0.bb
@@ -41,6 +41,17 @@ SRCREV_telemetry = "8abddc3dbc8beb04a39b5ea40cbba5020317102f"
SRCREV_gtest = "99760ac1776430f3df65947992bf4e8ebc0d7660"
SRCREV_FORMAT =
"openvino_mkl_onednn_xbyak_ade_protobuf_gflags_zlib_node-api-headers_node-addon-api_mlas_telemetry_gtest"
+# For NPU plugin
+SRC_URI +=
"git://github.com/oneapi-src/level-zero.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/thirdparty/level_zero/level-zero;name=level-zero;nobranch=1
\
+
git://github.com/intel/level-zero-npu-extensions.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/src/plugins/intel_npu/thirdparty/level-zero-ext;name=level-zero-ext;nobranch=1
\
+
git://github.com/jbeder/yaml-cpp.git;protocol=https;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/src/plugins/intel_npu/thirdparty/yaml-cpp;name=yaml-cpp;nobranch=1
\
+ file://0001-Fix-intel-NPU-plugin-build-issue-with-GCC15.patch \
+ "
+SRCREV_level-zero = "9402907a3ce6987871325e4e1329e053b8e5cf2b"
+SRCREV_level-zero-ext = "f8bba8915e0a5fe8317f7aa48007ecc5a8c179ca"
+SRCREV_yaml-cpp = "da82fd982c260e7f335ce5acbceff24b270544d1"
+SRCREV_FORMAT += "_level-zero_level-zero-ext_yaml-cpp"
+
LICENSE = "Apache-2.0 & MIT & BSD-3-Clause & Zlib"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327 \
file://thirdparty/xbyak/COPYRIGHT;md5=3c98edfaa50a86eeaef4c6109e803f16 \
@@ -76,7 +87,6 @@ EXTRA_OECMAKE += " \
-DENABLE_SYSTEM_FLATBUFFERS=ON \
-DENABLE_SYSTEM_SNAPPY=ON \
-DFETCHCONTENT_BASE_DIR="${S}" \
- -DENABLE_INTEL_NPU=OFF \
-DPYTHON3_CONFIG="python3-config" \
-DENABLE_OV_JAX_FRONTEND=OFF \
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
@@ -104,6 +114,7 @@ PACKAGECONFIG[opencl] = "-DENABLE_INTEL_GPU=TRUE,
-DENABLE_INTEL_GPU=FALSE, virt
PACKAGECONFIG[python3] = "-DENABLE_PYTHON=ON -DENABLE_PYTHON_PACKAGING=ON,
-DENABLE_PYTHON=OFF, patchelf-native, python3 python3-numpy python3-progress"
PACKAGECONFIG[samples] = "-DENABLE_SAMPLES=ON -DENABLE_COMPILE_TOOL=ON,
-DENABLE_SAMPLES=OFF -DENABLE_COMPILE_TOOL=OFF, opencv"
PACKAGECONFIG[verbose] = "-DVERBOSE_BUILD=1,-DVERBOSE_BUILD=0"
+PACKAGECONFIG[intel-npu] = "-DENABLE_INTEL_NPU=ON, -DENABLE_INTEL_NPU=OFF"
do_configure:prepend() {
# Dont set PROJECT_ROOT_DIR
@@ -118,11 +129,15 @@ EOF
chmod +x ${WORKDIR}/qemuwrapper
}
+NPU_INSTALL_CMD = "find ${B}/src/plugins/intel_npu/src/plugin/cross-compiled/
-type f -name \"*_disp.cpp\" -exec sed -i -e \"s%${S}%${TARGET_DBGSRC_DIR}%g\"
{} + || bberror \"Failed to update dispatcher source paths\""
+
do_install:append() {
rm -rf ${D}${prefix}/install_dependencies
rm -rf ${D}${prefix}/setupvars.sh
find ${B}/src/plugins/intel_cpu/cross-compiled/ -type f -name *_disp.cpp
-exec sed -i -e 's%'"${S}"'%'"${TARGET_DBGSRC_DIR}"'%g' {} +
+
+ ${@bb.utils.contains('PACKAGECONFIG', 'intel-npu', '${NPU_INSTALL_CMD}',
'', d)}
}
# Otherwise e.g. ros-openvino-toolkit-dynamic-vino-sample when using
dldt-inference-engine uses dldt-inference-engine WORKDIR
--
2.46.2
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#8706):
https://lists.yoctoproject.org/g/meta-intel/message/8706
Mute This Topic: https://lists.yoctoproject.org/mt/117630408/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-intel/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-