orocos_kinematics_dynamics
orocos_kinematics_dynamics copied to clipboard
Compile issue of python bindings
I am running python 3.9. I cloned the repo, then git submodule update --init, and then cd into python_orocos_kdl and ran catkin make --this. The other package succeeded, the python bindings didn't.
Starting >>> python_orocos_kdl
______________________________________________________________________________________________________________________
Errors << python_orocos_kdl:make /home/cmosig/projects/master_thesis/fub_roscar/logs/python_orocos_kdl/build.make.002.log
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp: In function ‘void init_frames(pybind11::module&)’:
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp:80:29: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
80 | vector.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp:167:29: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
167 | wrench.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp:242:28: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
242 | twist.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp:375:31: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
375 | rotation.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/frames.cpp:457:28: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
457 | frame.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp: In function ‘void init_framevel(pybind11::module&)’:
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp:65:33: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
65 | double_vel.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp:135:33: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
135 | vector_vel.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp:221:32: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
221 | twist_vel.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp:310:35: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
310 | rotation_vel.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
/home/cmosig/projects/master_thesis/fub_roscar/src/orocos_kinematics_dynamics/python_orocos_kdl/PyKDL/framevel.cpp:384:32: error: could not convert ‘pybind11::detail::self’ from ‘const pybind11::detail::self_t’ to ‘pybind11::handle’
384 | frame_vel.def(py::hash(py::self));
| ~~~~^~~~
| |
| const pybind11::detail::self_t
make[2]: *** [CMakeFiles/PyKDL.dir/build.make:90: CMakeFiles/PyKDL.dir/PyKDL/frames.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/PyKDL.dir/build.make:118: CMakeFiles/PyKDL.dir/PyKDL/framevel.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:295: CMakeFiles/PyKDL.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
cd /home/cmosig/projects/master_thesis/fub_roscar/build/python_orocos_kdl; catkin build --get-env python_orocos_kdl | catkin env -si /usr/bin/make --jobserver-auth=3,4; cd -
......................................................................................................................
Failed << python_orocos_kdl:make [ Exited with code 2 ]
Failed <<< python_orocos_kdl [ 4.8 seconds ]
The last CI run was 2 months ago. I just triggered the CI again, https://github.com/orocos/orocos_kinematics_dynamics/actions/runs/3322737754. Lets see what happens there. Ubuntu 20.04 in combination with python 3.9 is tested there.
I assume you are running ubuntu 20.04.
Yes, ubuntu 20.04.5 and python3.9. Still got the same error after pulling.
It seems similar to #401. But i the author of that issue, didn't provide enough information to find the real cause.
Could you please check the logs for the found paths of PyBind and orocoa_kdl?
What do you mean by "found paths"? I can send you the catkin make log files if that helps. Or do you need other log files?
Yes, I think that should be the starting point.
that is the entire log directory in /build of orocos_kdl
orocos_kdl.tar.gz
@cmosig do you have the logs of the python_orocos_kdl? I think the logs of orocos_kdl are not really relevant.
Oh yes, ups, my mistake. python_orocos_kdl.tar.gz
I don't see any signs. It doesn't show the paths of the found libraries.
Could you maybe edit the CMakelists.txt of python_orocos_kdl, so it prints these paths? Or maybe the version of the found KDL package. As my guess is still it is caused by version mismatch.
Another test would be to try to compile it outside of a catkin ws. As that is also what is done in CI.
@cmosig A friend of mine experienced the same issue. I was able debug the issue on his machine. Which was that he had a different version of PyBind11 installed on his system which was found but incompatible.
If you only responded to my question to try to print the paths of the found libraries, we would have probably figured this out much earlier. So next time please respond, when somebody is helping you.