Skip to content

Build fails with openCL enabled #821

Description

@ggardet

Build of armnn 26.01 fails with openCL enabled on openSUSE Tumbleweed (both aarch64 and x86_64)
Error log:

[   45s] [  1%] Building CXX object src/backends/aclCommon/CMakeFiles/armnnAclCommon.dir/ArmComputeTensorUtils.cpp.o
[   45s] cd /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/build/src/backends/aclCommon && /usr/bin/c++ -DARMCOMPUTECL_ENABLED -DARMCOMPUTENEON_ENABLED -DARMNNREF_ENABLED -DDYNAMIC_BACKEND_BUILD_DIR=\"/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/build\" -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/include -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/profiling -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/armnn -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/armnnUtils -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/backends -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/profiling -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/profiling/common/include -I/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/profiling/client/include -isystem /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/third-party -isystem /usr/include/half -mbranch-protection=standard -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type  -g -pthread -Wno-error=unused-result -std=c++17 -Wall -Wextra -Werror -Wold-style-cast -Wno-missing-braces -Wconversion -Wsign-conversion  -Wno-psabi -O2 -g  -std=gnu++17 -fPIC -MD -MT src/backends/aclCommon/CMakeFiles/armnnAclCommon.dir/ArmComputeTensorUtils.cpp.o -MF CMakeFiles/armnnAclCommon.dir/ArmComputeTensorUtils.cpp.o.d -o CMakeFiles/armnnAclCommon.dir/ArmComputeTensorUtils.cpp.o -c /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/backends/aclCommon/ArmComputeTensorUtils.cpp
[   45s] In file included from /usr/include/arm_compute/core/CL/ICLArray.h:31,
[   45s]                  from /usr/include/arm_compute/core/CL/CLTypes.h:31,
[   45s]                  from /usr/include/arm_compute/core/CL/ICLTensor.h:31,
[   45s]                  from /usr/include/arm_compute/runtime/CL/CLTensor.h:31,
[   45s]                  from /usr/include/arm_compute/runtime/CL/functions/CLReductionOperation.h:31,
[   45s]                  from /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/backends/cl/workloads/ClReduceWorkload.hpp:10,
[   45s]                  from /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/backends/aclCommon/ArmComputeUtils.hpp:22,
[   45s]                  from /home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/src/backends/aclCommon/ArmComputeTensorUtils.cpp:8:
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:149:5: error: ‘clCreateCommandBufferKHR’ was not declared in this scope; did you mean ‘clCreateCommandQueue_ptr’?
[   45s]   149 |     DECLARE_FUNCTION_PTR(clCreateCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:149:5: error: ‘clCreateCommandBufferKHR’ was not declared in this scope; did you mean ‘clCreateCommandQueue_ptr’?
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:149:5: error: template argument 1 is invalid
[   45s]   149 |     DECLARE_FUNCTION_PTR(clCreateCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:150:5: error: ‘clRetainCommandBufferKHR’ was not declared in this scope; did you mean ‘clRetainCommandQueue_ptr’?
[   45s]   150 |     DECLARE_FUNCTION_PTR(clRetainCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:150:5: error: ‘clRetainCommandBufferKHR’ was not declared in this scope; did you mean ‘clRetainCommandQueue_ptr’?
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:150:5: error: template argument 1 is invalid
[   45s]   150 |     DECLARE_FUNCTION_PTR(clRetainCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:151:5: error: ‘clReleaseCommandBufferKHR’ was not declared in this scope; did you mean ‘clReleaseCommandQueue_ptr’?
[   45s]   151 |     DECLARE_FUNCTION_PTR(clReleaseCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:151:5: error: ‘clReleaseCommandBufferKHR’ was not declared in this scope; did you mean ‘clReleaseCommandQueue_ptr’?
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:151:5: error: template argument 1 is invalid
[   45s]   151 |     DECLARE_FUNCTION_PTR(clReleaseCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:152:5: error: ‘clFinalizeCommandBufferKHR’ was not declared in this scope; did you mean ‘clRetainCommandBufferKHR_ptr’?
[   45s]   152 |     DECLARE_FUNCTION_PTR(clFinalizeCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:152:5: error: ‘clFinalizeCommandBufferKHR’ was not declared in this scope; did you mean ‘clRetainCommandBufferKHR_ptr’?
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:152:5: error: template argument 1 is invalid
[   45s]   152 |     DECLARE_FUNCTION_PTR(clFinalizeCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:153:5: error: ‘clEnqueueCommandBufferKHR’ was not declared in this scope; did you mean ‘clEnqueueReadBuffer’?
[   45s]   153 |     DECLARE_FUNCTION_PTR(clEnqueueCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:153:5: error: ‘clEnqueueCommandBufferKHR’ was not declared in this scope; did you mean ‘clEnqueueReadBuffer’?
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:153:5: error: template argument 1 is invalid
[   45s]   153 |     DECLARE_FUNCTION_PTR(clEnqueueCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:154:5: error: ‘clCommandNDRangeKernelKHR’ was not declared in this scope
[   45s]   154 |     DECLARE_FUNCTION_PTR(clCommandNDRangeKernelKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:154:5: error: ‘clCommandNDRangeKernelKHR’ was not declared in this scope
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:154:5: error: template argument 1 is invalid
[   45s]   154 |     DECLARE_FUNCTION_PTR(clCommandNDRangeKernelKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:156:5: error: ‘clUpdateMutableCommandsKHR’ was not declared in this scope
[   45s]   156 |     DECLARE_FUNCTION_PTR(clUpdateMutableCommandsKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:156:5: error: ‘clUpdateMutableCommandsKHR’ was not declared in this scope
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:156:5: error: template argument 1 is invalid
[   45s]   156 |     DECLARE_FUNCTION_PTR(clUpdateMutableCommandsKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:149:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   149 |     DECLARE_FUNCTION_PTR(clCreateCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:150:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   150 |     DECLARE_FUNCTION_PTR(clRetainCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:151:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   151 |     DECLARE_FUNCTION_PTR(clReleaseCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:152:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   152 |     DECLARE_FUNCTION_PTR(clFinalizeCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:153:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   153 |     DECLARE_FUNCTION_PTR(clEnqueueCommandBufferKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:154:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   154 |     DECLARE_FUNCTION_PTR(clCommandNDRangeKernelKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] /usr/include/arm_compute/core/CL/OpenCL.h:156:5: error: cannot convert ‘std::nullptr_t’ to ‘int’ in initialization
[   45s]   156 |     DECLARE_FUNCTION_PTR(clUpdateMutableCommandsKHR);
[   45s]       |     ^~~~~~~~~~~~~~~~~~~~
[   45s] make[2]: *** [src/backends/aclCommon/CMakeFiles/armnnAclCommon.dir/build.make:82: src/backends/aclCommon/CMakeFiles/armnnAclCommon.dir/ArmComputeTensorUtils.cpp.o] Error 1
[   45s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/armnn-opencl-26.01-build/armnn-26.01/build'
[   45s] make[1]: *** [CMakeFiles/Makefile2:1176: src/backends/aclCommon/CMakeFiles/armnnAclCommon.dir/all] Error 2

ComputeLibrary 53.1.0
openCL headers 2026.05.29
opencl-cpp-headers 2025.07.22

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions