ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
2014-01-28 17:23:07 -0500 | marked best answer | Best practice for rosdep, ubuntu packages, and others Hello, As already discussed in question #2701, I am working on the release of the modular_cloud_matcher package. This package depends on libnabo and libpointmatcher, for which I provide Ubuntu packages for the last 4 releases (from Lucid to Oneiric) on my PPA. As there is currently no way to tell rosdep to fetch packages from a PPA, in a previous discussion with Tully Foote we agreed that the user will have to install these packages by hand. The question then is whether I should add these as package dependency in the rosdep.yaml, and if so, what to do with non-ubuntu systems. Should I provide a script that fetches the packages and "cmakes/makes/makes install" them? If so, is there a way to provide an "other" or "default" target in rosdep.yaml? Or should I leave these dependencies out and let the user install libnabo and libpointmatcher by hand? I will be happy to hear your opinion on the best practice in this context. Thank you! |
2014-01-28 17:23:04 -0500 | marked best answer | multiple ros release support in rosdep.yaml The modular_cloud_matcher package requires yaml-cpp, which is installed in the ros-wide rosdep.yaml in electric but not in diamondback. For the latter, I had put an entry in our rosdep.yaml: This entry solves the problem for diamondback, but creates a conflict in electric: Is there a way to specify rules specific to different ros releases in rosdep.yaml? |
2013-05-24 22:18:27 -0500 | received badge | ● Necromancer (source) |
2013-04-07 23:40:37 -0500 | answered a question | Cancelling a ROS action within an executive_teer node The answer given by Patrick works, but misses the point of teer. A better solution would be to have |
2013-03-12 06:32:20 -0500 | answered a question | Problem compiling modular_cloud_matcher |
2013-03-12 06:29:38 -0500 | answered a question | Gmapping for indoor aerial vehicle? The names of this package have changed, now they are: |
2013-02-20 23:24:07 -0500 | received badge | ● Nice Answer (source) |
2013-02-20 06:32:19 -0500 | received badge | ● Teacher (source) |
2013-02-20 03:24:11 -0500 | answered a question | ethzasl_icp_mapper occupancy_grid_builder The error link is broken. |
2012-11-19 03:06:58 -0500 | received badge | ● Notable Question (source) |
2012-11-19 03:06:58 -0500 | received badge | ● Famous Question (source) |
2012-11-19 03:06:58 -0500 | received badge | ● Popular Question (source) |
2012-11-07 11:38:23 -0500 | received badge | ● Famous Question (source) |
2012-11-07 11:38:23 -0500 | received badge | ● Notable Question (source) |
2012-11-07 11:38:23 -0500 | received badge | ● Popular Question (source) |
2012-10-29 02:51:38 -0500 | received badge | ● Famous Question (source) |
2012-10-29 02:51:38 -0500 | received badge | ● Notable Question (source) |
2012-10-19 10:17:55 -0500 | received badge | ● Notable Question (source) |
2012-10-19 10:17:55 -0500 | received badge | ● Popular Question (source) |
2012-06-12 08:02:30 -0500 | commented answer | Openni launch process has died http://answers.ros.org/question/33622/openni_launch-not-working-in-fuerte-ubuntu-precise/ discusses the question in details... |
2012-06-12 07:07:21 -0500 | commented answer | Openni launch process has died After some more in-depth experiments, it seems that |
2012-06-12 05:24:42 -0500 | answered a question | Openni launch process has died I have the same problem under fuerte/12.04. I also get the boost assert (also mentioned in http://answers.ros.org/question/11925/ros-kinect-roslaunch-openni_launch-opennilaunch/). Before this assert, I get one threading-related python exception per process:
The problem seems to be a conflict with the Linux driver. Removing it with
and
solves the problem. |
2012-03-20 23:34:36 -0500 | commented answer | rosdep install error Does it mean that in the future, rosdep 2 will not be included in the deb and therefore should always be installed by pip? What will happen for the "normal" user? |
2012-03-20 23:22:29 -0500 | answered a question | Stack does not yet have a Debian package. Thanks for the answer. It would be good if during the time the deb packages are in shadow, debbuild report would not show the package as "broken" as it does now. |
2012-03-20 06:27:33 -0500 | asked a question | Stack does not yet have a Debian package. I am trying to release executive_teer into unstable, but the build system does not create a debian package, for a reason I cannot explain. See for instance this log. |
2012-03-18 00:34:24 -0500 | answered a question | Compiling tf or tf2 with -std=gnu++0x Hello, I am the maintainer of I did not expect too much problems such as this one to happen, as C++0x is supposed to be highly backward compatible, but it does happen sometimes. I have created patches that fix these issues, see the related ticket |
2012-02-23 22:57:17 -0500 | answered a question | Is ROS.org's Code API generator supposed to work with python code imported using git_checkout.mk Thank you for the answer. I am now using git submodules to fetch the upstream teer in a subdirectory inside teer_ros. That should solve the issue nicely. |
2012-02-23 07:45:48 -0500 | answered a question | libpointmatcher compilation error Could you try again? Without any addition information it is difficult to help you trace the source of the problem. |
2012-02-23 06:57:35 -0500 | asked a question | Is ROS.org's Code API generator supposed to work with python code imported using git_checkout.mk Hello, I am using git_chekout.mk in http://www.ros.org/wiki/teer to fetch teer's source code into ROS. Currently, there is no "Code API" generated for it; is it because the generator is busy/overloaded or because it is not supposed to index fetched code? If the latter explanation is the right one, what is the best practice to document inside ROS code fetched from outside (be it with git_checkout, svn_checkout or tarball's import)? Thank you, kind regards |
2012-02-18 15:12:12 -0500 | received badge | ● Popular Question (source) |
2011-11-10 19:46:02 -0500 | received badge | ● Scholar (source) |
2011-11-10 19:46:02 -0500 | marked best answer | Best practice for rosdep, ubuntu packages, and others We've been moving away from wrapping system-installable libraries in ROS packages. It leads to less portable code, as you end up using ROS-specific linking methods to use these libraries. Instead, as much as possible, we are now trying to:
A valid criticism of source rosdeps is that they don't come with an uninstall mechanism. That said, the main role of the source rosdeps, IMHO, is to provide a starting point to people on other platforms. They are generally equivalent to what that user would have done if they had to manually download the source and install on their own. We try to shy away from PPAs for libraries, as Ubuntu does, as they lack safety guards to prevent downstream issues. |
2011-11-10 01:05:27 -0500 | edited answer | Best practice for rosdep, ubuntu packages, and others Hello! Well, this is certainly one way, but it has some disadvantages: using distro packages allows to fix bugs and add API-compatible features (for instance new filters in libpointmatcher) without requiring a recompilation of the ROS package. The problem is that the reality of the research landscape is complex and that one often wants to use a lib with ROS in a project and as a standalone utility in another project. But I agree that providing only Ubuntu packages is not so nice. Fedora packages of libnabo and libpointmatcher would be very welcomed, but this is another question. So I see three solutions:
None of these solutions please me, as they all have major drawbacks. Also, my question remains open: Is there a way to provide an "other" or "default" target in rosdep.yaml? Also it seems that rosdep's documentation is a bit outdated, for instance there is currently nothing in /opt/ros/lib or /opt/ros/include and ROS does not seem to use these locations. |