Re: [Help needed] Build openvdb with nanobind requirement

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Apr 5, 2025 at 3:00 AM Sandro <lists@xxxxxxxxxxxxx> wrote:
>
> On 05-04-2025 00:45, Luya Tshimbalanga wrote:
> > Hello team,
> >
> > I hit an issue when building openvdb on nanobind dependency which refuses to use python3-nanobind at the following:
> >
> > -- Found Python: /usr/bin/python3.13 (found version "3.13.2") found components: Development Interpreter Development.Module Development.Embed
> > CMake Error at CMakeLists.txt:483 (find_package):
> >    By not providing "Findnanobind.cmake" in CMAKE_MODULE_PATH this project has
> >    asked CMake to find a package configuration file provided by "nanobind",
> >    but CMake did not find one.
> >
> >    Could not find a package configuration file provided by "nanobind" with any
> >    of the following names:
> >
> >      nanobindConfig.cmake
> >      nanobind-config.cmake
> >
> >    Add the installation prefix of "nanobind" to CMAKE_PREFIX_PATH or set
> >    "nanobind_DIR" to a directory containing one of the above files.  If
> >    "nanobind" provides a separate development package or SDK, be sure it has
> >    been installed.
> >
> >
> > Trying to set "nanobind_DIR" does nothing. Can someone look at the issue?

You set it to /usr/lib64/python3.13/site-packages/nanobind/cmake but
the nanobind package is noarch, so this should be
/usr/lib/python3.13/site-packages/nanobind/cmake

Also, upstream nanobind provides a small script to find the right
path; upstream openvdb should probably be suggested to use that:
$ python3 -c 'import nanobind; print(nanobind.cmake_dir())'
/usr/lib/python3.13/site-packages/nanobind/cmake

> > Here is the scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=131112367
> The required CMake configuration for the build backend,
> nanobind-config.cmake, is provided by python3-nanobind-devel. I think
> that package should provide `cmake(nanobind)` as well, since using that
> is what packaging guidelines recommend and it would make live easier to
> find the required package.

The CMake files are in the Python package directory (because the
_Python_ packaging side is sandboxed), which is non-standard and
wouldn't be found by CMake. Thus it doesn't and shouldn't provide the
virtual name. If the Fedora packager patches it to install to a
standard location, then adding `cmake(nanobind)` would make sense (and
would automatically happen, too.)

> -- Sandro
>

-- 
Elliott
-- 
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux