Pybind11 Module is not loading


I am trying to compile a library on Baobab and for which I have multiple dependencies which are loaded using module

module add GCCcore/9.3.0
module add Python/3.8.2
module add CMake/3.16.4
module add GCC/9.3.0
module add GSL/2.6
module add CUDA/11.0.2
module add OpenMPI/4.0.3
module add FFTW/3.3.8
module add Bison/3.5.3
module add flex/2.6.4
module add pybind11/2.4.3-Python-3.8.2
module add CFITSIO/3.48

If I run the compilation now, I get an error that Pybind11 is not available.

On running the following command, I don’t see any paths.

echo $(echo $PATH | tr ':' '\n' | grep pybind11)

On second try, I loaded newer versions of the library for testing, (cannot be used as CFITSIO/3.49 is not available, and CFITSIO/3.48 needs GCCcore/9.3.0)

module add GCCcore/10.2.0
module add Python/3.8.6
module add CMake/3.18.4
module add GCC/10.2.0
module add GSL/2.6
module add CUDA/11.1.1
module add OpenMPI/4.0.5
module add FFTW/3.3.8
module add Bison/3.7.1
module add flex/2.6.4
module add pybind11/2.6.0

Here on running the same command, I can see that Pybind11 has been properly added to the path.

$ echo $(echo $PATH | tr ':' '\n' | grep pybind11)

On further digging around, I found that there is no bin folder in pybind11/2.4.3-Python-3.8.2 folder.

$ ls /opt/ebsofts/pybind11/2.4.3-GCCcore-9.3.0-Python-3.8.2/
easybuild  include  share

Any help on this would be appreciated.

Thanks in advance,

Hi there,

Can you please provide the full commands you launched to get the error?

pybind11 is a pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mainly to create Python bindings of existing C++ code (cf. pybind11 documentation and ), thus you can not use it as a standalone executable, but you need to compile C++ code against it.

As I have explained above, that is perfectly fine, since the include folder contains the C++ header files while the share one the cmake files.

NB , version 2.6.0 does not provide any “runtime” binary, but a new tool to avoid typing python -m pybind11 (cf. Release Version 2.6.0 · pybind/pybind11 · GitHub ):

capello@login2:~$ ls -l /opt/ebsofts/pybind11/2.6.0-GCCcore-10.2.0/bin/
total 4
-rwxr-xr-x 1 root root 251 Mar 19 17:57 pybind11-config

I thus guess the library you are trying to compile supports only pybind11 version 2.6.0 or later.

Thx, bye,