Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

nanobind config can not be found for openSUSE builds #7526

@skriesch

Description

@skriesch

Bug Report

I want to build python-onnx with the latest version 1.20.0 for openSUSE Tumbleweed and openSUSE Leap 16.0.
Python and python-nanobind are installed.

Is the issue related to model conversion?

No. It is related to building onnx.

Describe the bug

The nanobind-config can not be found for the installed nanobind library via CMakeLists.txt.
We are receiving following error message:

[   49s] Using cmake args: ['/usr/bin/cmake', '-DPython3_EXECUTABLE=/usr/bin/python3', '-DONNX_BUILD_PYTHON=ON', '-DONNX_NAMESPACE=onnx', '-DCMAKE_BUILD_TYPE=Release', '-DONNX_ML=1', '/home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0']
[   49s] -- The CXX compiler identification is GNU 15.2.1
[   49s] -- Detecting CXX compiler ABI info
[   50s] -- Detecting CXX compiler ABI info - done
[   50s] -- Check for working CXX compiler: /usr/bin/c++ - skipped
[   50s] -- Detecting CXX compile features
[   50s] -- Detecting CXX compile features - done
[   50s] -- Found Python3: /usr/bin/python3 (found version "3.13.9") found components: Interpreter Development.Module Development.SABIModule
[   50s] -- Found Python: /usr/bin/python3 (found version "3.13.9") found components: Interpreter Development.Module Development.SABIModule
[   50s] -- Found Protobuf: /usr/lib64/libprotobuf.so (found version "6.33.2")
[   50s] -- Found Threads: TRUE
[   50s] -- absl_VERSION: 20250814
[   50s] -- ONNX_PROTOC_EXECUTABLE: /usr/bin/protoc
[   50s] Generated: /home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/.setuptools-cmake-build/onnx/onnx-ml.proto
[   50s] Generated: /home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/.setuptools-cmake-build/onnx/onnx-operators-ml.proto
[   50s] Generated: /home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/.setuptools-cmake-build/onnx/onnx-data.proto
[   51s] CMake Warning at CMakeLists.txt:471 (find_package):
[   51s]   By not providing "Findnanobind.cmake" in CMAKE_MODULE_PATH this project has
[   51s]   asked CMake to find a package configuration file provided by "nanobind",
[   51s]   but CMake did not find one.
[   51s] 
[   51s]   Could not find a package configuration file provided by "nanobind" with any
[   51s]   of the following names:
[   51s] 
[   51s]     nanobindConfig.cmake
[   51s]     nanobind-config.cmake
[   51s] 
[   51s]   Add the installation prefix of "nanobind" to CMAKE_PREFIX_PATH or set
[   51s]   "nanobind_DIR" to a directory containing one of the above files.  If
[   51s]   "nanobind" provides a separate development package or SDK, be sure it has
[   51s]   been installed.
[   51s] [ 11%] Creating directories for 'nanobind-populate'
[   51s] [ 22%] Performing download step (git clone) for 'nanobind-populate'
[   51s] CMake Error at nanobind-subbuild/nanobind-populate-prefix/tmp/nanobind-populate-gitclone.cmake:50 (message):
[   51s]   Failed to clone repository: 'https://github.com/wjakob/nanobind.git'
[   51s] 
[   51s] 
[   51s] gmake[2]: *** [CMakeFiles/nanobind-populate.dir/build.make:102: nanobind-populate-prefix/src/nanobind-populate-stamp/nanobind-populate-download] Error 1
[   51s] gmake[1]: *** [CMakeFiles/Makefile2:87: CMakeFiles/nanobind-populate.dir/all] Error 2
[   51s] gmake: *** [Makefile:91: all] Error 2
[   51s] 
[   51s] CMake Error at /usr/share/cmake/Modules/FetchContent.cmake:1918 (message):
[   51s]   Build step for nanobind failed: 2
[   51s] Call Stack (most recent call first):
[   51s]   /usr/share/cmake/Modules/FetchContent.cmake:1609 (__FetchContent_populateSubbuild)
[   51s]   /usr/share/cmake/Modules/FetchContent.cmake:2145:EVAL:2 (__FetchContent_doPopulation)
[   51s]   /usr/share/cmake/Modules/FetchContent.cmake:2145 (cmake_language)
[   51s]   /usr/share/cmake/Modules/FetchContent.cmake:2384 (__FetchContent_Populate)
[   51s]   CMakeLists.txt:481 (FetchContent_MakeAvailable)
[   51s] 
[   51s] 
[   51s] -- **Configuring incomplete, errors occurred!**
[   51s] Traceback (most recent call last):
[   51s]   File "/home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/setup.py", line 352, in <module>
[   51s]     setuptools.setup(
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/__init__.py", line 117, in setup
[   51s]     return distutils.core.setup(**attrs)
[   51s]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 186, in setup
[   51s]     return run_commands(dist)
[   51s]            ^^^^^^^^^^^^^^^^^^
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 202, in run_commands
[   51s]     dist.run_commands()
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1002, in run_commands
[   51s]     self.run_command(cmd)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1104, in run_command
[   51s]     super().run_command(command)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
[   51s]     cmd_obj.run()
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 135, in run
[   51s]     self.run_command(cmd_name)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 357, in run_command
[   51s]     self.distribution.run_command(command)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1104, in run_command
[   51s]     super().run_command(command)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
[   51s]     cmd_obj.run()
[   51s]   File "/home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/setup.py", line 260, in run
[   51s]     self.run_command("cmake_build")
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 357, in run_command
[   51s]     self.distribution.run_command(command)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/dist.py", line 1104, in run_command
[   51s]     super().run_command(command)
[   51s]   File "/usr/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
[   51s]     cmd_obj.run()
[   51s]   File "/home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0/setup.py", line 223, in run
[   51s]     subprocess.check_call(cmake_args)
[   51s]   File "/usr/lib64/python3.11/subprocess.py", line 413, in check_call
[   51s]     raise CalledProcessError(retcode, cmd)
[   51s] subprocess.CalledProcessError: Command '['/usr/bin/cmake', '-DPython3_EXECUTABLE=/usr/bin/python3', '-DONNX_BUILD_PYTHON=ON', '-DONNX_NAMESPACE=onnx', '-DCMAKE_BUILD_TYPE=Release', '-DONNX_ML=1', '/home/abuild/rpmbuild/BUILD/python-onnx-1.20.0-build/onnx-1.20.0']' returned non-zero exit status 1.
[   51s] error: Bad exit status from /var/tmp/rpm-tmp.Bob7ho (%build)
[   51s] 

We have got no connection via the build system to Github. What is required additionally to nanobind or where is the required config?

System information

  • OS Platform and Distribution (e.g. Linux Ubuntu 20.04): openSUSE Tumbleweed
  • ONNX version (e.g. 1.13): 1.20.0
  • Python version: 3.13.9
  • GCC/Compiler version (if compiling from source): 15.2.1
  • CMake version: 4.1.3
  • Protobuf version: 6.33.2
  • Visual Studio version (if applicable): -

Reproduction instructions

  • Build the latest version of onnx on Linux. Install the required python-nanobind (in our case as a Python library) and you run into this issue.

Expected behavior

Onnx is buildable on Linux.

Notes

Build log: openSUSE OBS

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions