Code Monkey home page Code Monkey logo

pybind11_catkin's Introduction

pybind11_catkin

This repository wraps the recent releases of pybind11 for use in catkin-based projects. We follow the versioning of the upstream project.

Examples

General pybind11 examples can be found at the official pybind11 documentation website. If you are searching for examples actually using pybind11_catkin, you should have a look at pybind11_examples.

pybind11_catkin's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pybind11_catkin's Issues

pybind11 version

Hi,

I see that the latest commit updates pybind11_catkin to track pybind11 2.6.0:
b749719

but when I print the version in cmake:
message(${pybind11_catkin_VERSION})
it return 2.5.0

Is this just because the version has not been updated in some cmake file, or is it really still 2.5.0?

(Also pybind11 have released 2.6.1 which fix some regressions in 2.6.0)

Thanks,
Austin

Extra include folder pybind11_catkin causes issues

I'm not sure why this package uses an extra layer pybind11_catkin in its include folder hierarchy, which is essentially skipped then by the macro pybind_add_module:
https://github.com/ipab-slmc/pybind11_catkin/blob/2990ceed6522b0c61c700210714a120ca4abe959/cmake/pybind11_catkin.cmake.in#L19

This causes issues with catkin's normal mechanism to transitively pass upstream dependencies to downstream packages: While catkin_INCLUDE_DIRS will only contain the base include path, what is actually needed to find headers is include/pybind11_catkin. However, this path is only provided in the pybind_add_module macro, such that downstream packages will fail on corresponding includes.

indigo release fails to build

It's failing on all platforms.

Here's the output on amd64: http://build.ros.org/view/Ibin_uT32/job/Ibin_uT64__pybind11_catkin__ubuntu_trusty_amd64__binary/7/console

23:35:25 CMake Error at /opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:298 (message):
23:35:25   catkin_package() include dir 'include' does not exist relative to
23:35:25   '/tmp/binarydeb/ros-indigo-pybind11-catkin-2.2.3'
23:35:25 Call Stack (most recent call first):
23:35:25   /opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:100 (_catkin_package)
23:35:25   CMakeLists.txt:38 (catkin_package)
23:35:25 
23:35:25 
23:35:25 -- Configuring incomplete, errors occurred!
23:35:25 See also "/tmp/binarydeb/ros-indigo-pybind11-catkin-2.2.3/obj-x86_64-linux-gnu/CMakeFiles/CMakeOutput.log".
23:35:25 See also "/tmp/binarydeb/ros-indigo-pybind11-catkin-2.2.3/obj-x86_64-linux-gnu/CMakeFiles/CMakeError.log".
23:35:25 dh_auto_configure: cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCATKIN_BUILD_BINARY_PACKAGE=1 -DCMAKE_INSTALL_PREFIX=/opt/ros/indigo -DCMAKE_PREFIX_PATH=/opt/ros/indigo returned exit code 1
23:35:25 make[1]: *** [override_dh_auto_configure] Error 2
23:35:25 make[1]: Leaving directory `/tmp/binarydeb/ros-indigo-pybind11-catkin-2.2.3'
23:35:25 make: *** [build] Error 2
23:35:25 dpkg-buildpackage: error: debian/rules build gave error exit status 2
23:35:25 E: Building failed
23:35:25 Traceback (most recent call last):
23:35:25   File "/tmp/ros_buildfarm/ros_buildfarm/binarydeb_job.py", line 138, in build_binarydeb
23:35:25     subprocess.check_call(cmd, cwd=source_dir)
23:35:25   File "/usr/lib/python3.4/subprocess.py", line 561, in check_call
23:35:25     raise CalledProcessError(retcode, cmd)
23:35:25 # END SUBSECTION
23:35:25 subprocess.CalledProcessError: Command '['apt-src', 'build', 'ros-indigo-pybind11-catkin']' returned non-zero exit status 1

Bleeding edge, or released version?

The readme status:

This repository wraps the bleeding edge versions of pybind11 for use in catkin-based projects.

But CMakeLists.txt appears to actually package version 2.2.4.

I'm actually happy it's not fetching master or something similar, but just for clarification: you're tracking upstream with this package, but packaging a newer version is only done if/when a human decides to fetch the newer release archive.

Correct?

ROS2

Hi! I'm migrating a project that works with ROS2 Foxy from ROS1 Noetic and it depends on this package.

I wanted to verify if there is a ROS2 Foxy compatibility or if I can work directly with pybind11.

Thank you in advance,

Usage example?

Do you have an example project you could share? I have a C++ library wrapped using pybind 11 for which I have a setup.py file that builds it correctly. Would like to figure out how to get it working with catkin.

Fails to install FindPythonLibNew.cmake when specifying DESTDIR

I'm trying to build pybind11_catkin master using catkin tools on ROS melodic/ubuntu bionic. Is that expected to fail? The workspace which get's turned into a huge deb contains MoveIt Noetic and similar so I thought it might be right to use master instead of melodic-devel?

Error is:

Errors << pybind11_catkin:install /home/jenkins/workspace/mikado_mikado_ros_version-2.1/Entwicklung/../catkinworkspace-tmp/log/pybind11_catkin/build.install.000.log
CMake Error at cmake_install.cmake:155 (file):
  file INSTALL cannot find
  "/home/jenkins/workspace/mikado_mikado_ros_version-2.1/catkinworkspace-tmp/devel/.private/pybind11_catkin/share/pybind11_catkin/cmake/FindPythonLibsNew.cmake".


make[2]: *** [install] Error 1

earlier in the logs I found

Linked: (/home/jenkins/workspace/mikado_mikado_ros_version-2.1/Entwicklung/../catkinworkspace-test-tmp/devel/.private/pybind11_catkin/share/pybind11_catkin/cmake/FindPythonLibsNew.cmake, /home/jenkins/workspace/mikado_mikado_ros_version-2.1/Entwicklung/../catkinworkspace-test-tmp/devel/share/pybind11_catkin/cmake/FindPythonLibsNew.cmake)

which is in a different workspace that we use for running the unit tests

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.