Quantcast
Channel: ROS Answers: Open Source Q&A Forum - RSS feed
Viewing all 98 articles
Browse latest View live

Failing to add optional dependencies!

$
0
0
Hello, I have 3 ros packages: A, B and C B depends on A (as a required dependency) and C depends on A & B (but both as optional dependencies) I want to make the building of C always work, whether A or B both exist, both do not exist, or one of them exists without the other. In package C, I have written the CMakeLists.txt to first search for A, and if found also search for B: find_package(catkin COMPONENTS A ) if (${A_FOUND}) find_package(catkin COMPONENTS B ) if (${B_FOUND}) add_definitions(-DFLAG) endif(${B_FOUND}) endif(${A_FOUND}) In package.xml, I had to add B as a dependency for it to look for A and B at all What I get is that C is building in all cases except when B exists but A doesn't Please any explanation or help??

How do I include the header?

$
0
0
I am currently having some problem including header within my catkin_package. This is the file structure: pkg_a/ ├── CMakeLists.txt ├── CMakeLists.txt.user ├── include │ └── pkg_a │ ├── pugiconfig.hpp │ └── pugixml.hpp ├── package.xml ├── src │ ├── src.cpp │ ├── header_to_src.h │ ├── node.cpp │ ├── pugixml.cpp │ ├── src_2.cpp │ └── header_to_src_2.h └── srv ├── service1.srv ├── service2.srv ├── service3.srv ├── service4.srv ├── service5.srv ├── service6.srv ├── service7.srv └── service8.srv I am trying to include pugixml.hpp in the cpp. file. The way i've tried to do it is like this #include But it cannot find it.. What is the path to it.. I would like to avoid making direct path to the include folder, such that other packages also easily can enter include the .hpp file.

octomap Ubuntu dependencies

$
0
0
I'm doing a full source build of ROS Kinetic w/ MoveIt and one of the "system" dependencies is the ROS-packaged libfcl-0.5-dev, which depends on ros-kinetic-octomap, which depends on ros-kinetic-catkin / python-catkin-pkg. I'm not super familiar with ROS packaging, so I have two questions: 1) Why does ros-kinetic-octomap depend on ros-kinetic-catkin? Looking at the [release repository](https://github.com/ros-gbp/octomap-release), it seems that somewhere between upstream and the final .deb a package.xml gets added with a run_depend on catkin. Why would catkin be needed at runtime? 2) Why is octomap even a ROS package (ie, with package.xml)? (as opposed to some other 3rd party libraries that are simply packaged and distributed) I'm asking partly because this is installing a second catkin alongside my built-from-source version, but also to learn.

How can generate a list of dependencies from the src folder of a workspace?

$
0
0
Hello all, We have a large workspace with plenty packages coming from third party developers. At its moment, dependencies of those packages where solved using rosdep. However, for documentation purposes we need the complete list of dependencies of all packages. Is there a way of automatically generate that dependencies list? Something like an option on rosdep to not install anything, but just list all dependencies and output them to console or file. So far I haven't find such a tool. Thank you and best regards.

list dependencies of a pre-built package of ros ?

$
0
0
I have installed the full desktop version of ROS kinetic instead of building it from the source files. I would like to know the list of dependencies for a pre-built package in ROS ( for ex, turtlesim ). Is there a command that can list all the dependencies of a pre-built package. Any help is much appreciated. Thank you in advance.

Is there any command in ROS for knowing the system dependencies of the ROS packages ?

$
0
0
Hi, While I was reading on ROS packages,I came across that there are two kinds of dependencies.One is system dependencies and other is package dependencies.As we know that we can list the package dependencies using rospack command and if we want to list the system dependencies then whether there exists any command which list all the system dependencies of the package in similar way like the rospack command. Any help in these question will be highly appreciated.

remove the system dependencies of ROS package?

$
0
0
After installing a ros package, when I did rosdep check , it has displayed some missing system dependencies that were not taken care of, during apt-get install . So, I installed them using rosdep install. However when I want to remove the ros package , *sudo apt-get purge ros-** *sudo apt-get purge python-ros** *sudo apt-get autoremove* running the above three commands seem to be removing only the ros dependencies and not the system dependencies. How do I remove the system dependencies as well in this case? Thank you. PS: I am trying to install only a single ros package on Ubuntu 16.04 ARM.

What is the status of rdmanifests?

$
0
0
The [pylon_camera](http://wiki.ros.org/pylon_camera) package [installation procedure](http://wiki.ros.org/pylon_camera#Installation) instructs users to add a custom source to their local `rosdep` (`15-pylon_camera.list`) containing two `source::uri` elements that point to a single `rdmanifest` file: [pylon_sdk.rdmanifest](https://raw.githubusercontent.com/magazino/pylon_camera/indigo-devel/rosdep/pylon_sdk.rdmanifest). That `rdmanifest` then is used to make `rosdep` satisfy the `libpylon(-dev)` dependency (when used with `rosdep install ..`). I can still remember the time when the main `rosdep` database included snippets of `bash` (or even things coming close to full scripts), package-local yaml files with similar lines and `rdmanifest` files being distributed with packages. I also remember a major cleanup of `rosdep` to remove all that (because of running arbitrary snippets of shell script with super-user permissions, `rosdep` silently changing a system's configuration (by adding `ppa`s or other `apt` repositories fi), and because it was just generally not maintainable nor scalable). Seeing a recently created package like `pylon_camera` use something like `rdmanifest`s makes me wonder what the official status is of those particular pieces of the `rosdep` infrastructure, and whether current users / packagers / maintainers should be discouraged from relying on them? Afaik the buildfarm will also not build packages that rely on this (deprecated?) functionality, so perhaps that is deterrent enough already, but an authoritative answer would be nice to have.

extra dependencies listed for urdf_tutorials?

$
0
0
While listing out the dependencies of the package urdf_tutorials using `sudo apt-cache depends ros-kinetic-urdf-tutorials`, I am obtaining the list : Depends: ros-kinetic-joint-state-publisher Depends: ros-kinetic-pr2-description Depends: ros-kinetic-robot-state-publisher Depends: ros-kinetic-rviz Depends: ros-kinetic-urdf Depends: ros-kinetic-xacro However, when I refer to the documentation (http://wiki.ros.org/urdf_tutorial), there are more dependencies listed. So, why aren't these extra ones displayed with `sudo apt-cache depends`. Also, cross checking with the package.xml file, I have noticed that this command is displaying only the runtime dependencies of a package. Is it the case?

Installing only top-level dependencies for a package?

$
0
0
Is there a way I can use `apt-get install` command to install a ROS package and its first level dependencies only instead of all the dependencies recursively? I don't actually want to install or update the dependencies that this ROS package depends on, "recursively". During running a particular application if any 'dependency-not found' error is thrown, I would like to see what exactly is missing. Also, I have found a command `debtree --max-depth=number` that can limit the traversal of dependency tree. Is there a way I can integrate it with `apt-get install` or any other installation tool to get only the top level dependencies of a package?

ros-kinetic-fzi-icl-core not installed with desktop-full installation?

$
0
0
I am operating on Ubuntu 16.04 ARM64 . I am simulating the installation of desktop-full version of ROS Kinetic and I notice that a system package `libboost-date-time1.58.0` is getting upgraded during the installation. Looking at what ros package/packages is/are dependent on this, I found `ros-kinetic-fzi-icl-core` and `ros-kinetic-ecto` are the ROS packages depending on `libboost-date-time1.58.0` but they are not getting installed at all in the first place with the installation of `ros-kinetic-desktop-full`. What are these packages and are these packages supposed to be installed manually? Thank you very much in advance.

Unable to install ROS on Ubuntu 14.04.5

$
0
0
Hi, After following all the steps on ROS Wiki, I get stuck on sudo apt-get install ros-indigo-desktop-full I get the error Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: ros-indigo-desktop-full : Depends: ros-indigo-desktop but it is not going to be installed Depends: ros-indigo-perception but it is not going to be installed Depends: ros-indigo-simulators but it is not going to be installed E: Unable to correct problems, you have held broken packages. I have tried to fix dependencies sudo apt-get -f install I have also tried sudo apt-get install libsdformat1 Nothing has worked. Ouput of: uname -m x86_64 I didn't try sudo apt-get install xserver-xorg-dev-lts-utopic mesa-common-dev-lts-utopic libxatracker-dev-lts-utopic libopenvg1-mesa-dev-lts-utopic libgles2-mesa-dev-lts-utopic libgles1-mesa-dev-lts-utopic libgl1-mesa-dev-lts-utopic libgbm-dev-lts-utopic libegl1-mesa-dev-lts-utopic Because it can break X-Server. What to do?

CPP file can't find MoveIT dependencies.

$
0
0
Hi, I've followed the MoveIT tutorials with the PR2 robot on motion planning (move_group) (http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/pr2_tutorials/planning/src/doc/move_group_interface_tutorial.html) and it worked so far that I could see the robot move its arm in RVIZ through MoveIT. Now, I wanted to try this out on my robot so what I did was I created a new package for my robot through the MoveIT setup assistant with the URDF file that I have. After that I tried to take some minimal amount of code from the tutorial into my own arm.cpp file like this: #include #include #include #include #include #include #include int main(int argc, char **argv) { ros::init(argc, argv, "arm"); ros::NodeHandle node_handle; ros::AsyncSpinner spinner(1); spinner.start(); static const sd::string PLANNING_GROUP = "arm"; moveit::planning_interface::MoveGroupInterface move_group(PLANNING_GROUP); moveit::planning_interface::PlanningSceneInterface planning_scene_interface; const robot_state::JointModelGroup *joint_model_group = move_group.getCurrentState()->getJointModelGroup(PLANNING_GROUP); //We gebruiken rviz voor de visualisatie namespace rvt = rviz_visual_tools; moveit_visual_tools::MoveItVisualTools visual_tools("odom_combined"); visual_tools.deleteAllMarkers(); visual_tools.loadRemoteControl(); //Eigen::Affine3d text_pose = Eigen::Affine3d::Identity(); //text_pose.translation().z() = 1.75; // above head of PR2 //visual_tools.publishText(text_pose, "Arm", rvt::WHITE, rvt::XLARGE); visual_tools.trigger(); ROS_INFO_NAMED("arm", "Reference frame: %s", move_group.getPlanningFrame().c_str()); ROS_INFO_NAMED("gripper", "End effector link: %s", move_group.getEndEffectorLink().c_str()); geometry_msgs::Pose target_pose1; target_pose1.orientation.w = 1.0; target_pose1.position.x = 0.28; target_pose1.position.y = -0.7; target_pose1.position.z = 1.0; move_group.setPoseTarget(target_pose1); moveit::planning_interface::MoveGroupInterface::Plan my_plan; bool success = move_group.plan(my_plan); ROS_INFO_NAMED("arm", "Visualizing plan 1 (pose goal) %s", success ? "" : "FAILED"); ROS_INFO_NAMED("arm", "Visualizing plan 1 as trajectory line"); visual_tools.publishAxisLabeled(target_pose1, "pose1"); visual_tools.publishText(text_pose, "Pose Goal", rvt::WHITE, rvt::XLARGE); visual_tools.publishTrajectoryLine(my_plan.trajectory_, joint_model_group); visual_tools.trigger(); visual_tools.prompt("next step"); move_group.move() } Now, everytime I try to build my catkin workspace (catkin_make) I get the following error: fatal error: moveit/move_group_interface/move_group_interface.h: No such file or directory compilation terminated. If I comment out that line this error occurs on planning_scene_interface.h and If I comment this one out it happends to DisplayRobotState.h and so on... My CmakeList looks likes this: cmake_minimum_required(VERSION 2.8.3) project(knaak) find_package(catkin REQUIRED COMPONENTS moveit_core moveit_ros_planning moveit_ros_planning_interface pluginlib geometric_shapes moveit_visual_tools ) catkin_package( CATKIN_DEPENDS moveit_core moveit_ros_planning_interface interactive_markers ) install(DIRECTORY launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} PATTERN "setup_assistant.launch" EXCLUDE) install(DIRECTORY config DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) add_executable(arm arm.cpp) And my Package.xml looks like this: knaak0.3.0 An automatically generated package with all the configuration and launch files for using the robotarm_urdf with the MoveIt! Motion Planning FrameworkplaceholderplaceholderBSDhttp://moveit.ros.org/https://github.com/ros-planning/moveit/issueshttps://github.com/ros-planning/moveitcatkinpluginlibmoveit_coremoveit_ros_planning_interfacemoveit_ros_perceptioninteractive_markersgeometric_shapesmoveit_visual_toolspluginlibmoveit_coremoveit_fake_controller_managermoveit_ros_planning_interfacemoveit_ros_perceptioninteractive_markersmoveit_visual_toolsmoveit_ros_move_groupmoveit_kinematicsmoveit_planners_omplmoveit_ros_visualizationjoint_state_publisherrobot_state_publisherxacrorobotarm_urdfrobotarm_urdf Can anyone help me out getting these dependencies to work? Thanks in advance.

How to declare dependency on other ROS package for launch files

$
0
0
I'm creating a package that exclusively uses launch files from other ROS packages. In other words, I'm not creating any nodes I'm just making a package to conveniently group and launch nodes from other packages. How am I supposed to declare those other ROS packages as dependencies, if I do at all? Is it in the `package.xml` using the `` or some other tag such as ``? I've checked [REP 140](http://www.ros.org/reps/rep-0140.html#exec-depend-multiple), [REP 127](http://www.ros.org/reps/rep-0127.html#run-depend-multiple), the [`package.xml` wiki entry](http://wiki.ros.org/catkin/package.xml), and [Roslaunch tips for large projects](http://wiki.ros.org/ROS/Tutorials/Roslaunch%20tips%20for%20larger%20projects) and I'm not 100% how to do it. From what I can tell, REP 140 says to use `` for > ...packages providing shared libraries, > executable commands, Python modules, > launch scripts or any other files > required for running your package. which, to me, sounds like if I want to use the launch files from another package then I should declare that package as a dependency in `package.xml` using ``. So, again, the question is how am I supposed to declare those other ROS packages as dependencies, if I do at all? Edit: I should have tested the `` tag before mentioning it because I get the following error: The manifest (with format version 1) must not contain the following tags: exec_depend

Debian install Kinetic issues

$
0
0
**Hi, I'm trying to install kinetic in Debian 8.5, but I think there is dependencies errors using:**> sudo apt-get install ros-kinetic-desktop-full **and after some seconds this happends:** Reading package list ... Done Creating dependency tree Reading the status information ... Done Some packages could not be installed. This may mean that you asked for an impossible situation or, if you are using the distribution unstable, that some necessary packages have not yet been created or are have taken from "Incoming". The following information can help resolve the situation: The following packages have unmet dependencies:   ros-kinetic-desktop-full: Depends: ros-kinetic-desktop but will not install                              Depends: ros-kinetic-perception but will not install                              Depends: ros-kinetic-simulators but will not install                              Depends: ros-kinetic-urdf-tutorial but will not install E: Problems could not be corrected, you have retained broken packets. *I think that it are not finding the correct dependencies... maybe the dependencies link has changed?* ***I hope you can help me...***

Dynamixel Controller Manager showing "waiting for dependencies"

$
0
0
I am following this tutorial: http://wiki.ros.org/dynamixel_control... When I run the command roslaunch my_dynamixel_tutorial start_meta_controller.launch Controller Manager shows following: [WallTime: 1467285671.993447] [f_arm_controller] not all dependencies started, still waiting for ['joint4_controller', 'joint3_controller', 'joint5_controller']...

How to solve error Invoking make when creating a subscriber node?

$
0
0
I am trying to create a subscriber called Bearings that will take the pose (x, y and z) from ar_track_alvar package and output a bearing 'a' and and angle 'b' using mathematical formulas. I tried to follow the beginner tutorial for creating a subscriber. This is my subscriber code I included at the beginning of the code ros.h, AlvarMarker.h, pose.h, tf.h and trasform_datatypes.h. void printPose(const ar_track_alvar_msgs::AlvarMarker::ConstPtr& msg) { float a float b tf::Pose X; tf::Pose Y; tf::Pose Z; X.setOrigin(tf::pointMsgToTF(msg->pose.pose.position.x)); Y.setOrigin(tf::pointMsgToTF(msg->pose.pose.position.y)); Z.setOrigin(tf::pointMsgToTF(msg->pose.pose.position.z)); a = sqrt(X^2 +Y^2); b = atan((Z/a); ROS_INFO("distance: ", a, "Angle", b); } int main(int argc, char **argv) { ros::init(argc, argv, "Bearings"); ros::NodeHandle n; ros::Subscriber sub = n.subscribe("ar_pose_marker",1000,printPose); ros:: spin(); return 0; } I added these these lines to my cmakelist: add_executable(Bearings src/Bearings.cpp) target_link_libraries(Bearings ${catkin_LIBRARIES}) add_dependencies(Bearings ar_track_alvar_msgs_AlvarMarker) find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs ar_track_alvar tf ) Thank you for your help, Nissrine **EDIT** This is what is in my Cmakelist: cmake_minimum_required(VERSION 2.8.3) project(beginner_tutorials) find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs ar_track_alvar tf ) catkin_package( INCLUDE_DIRS include LIBRARIES beginner_tutorials CATKIN_DEPENDS roscpp rospy std_msgs DEPENDS system_lib ) include_directories( ${catkin_INCLUDE_DIRS} ) add_executable(Bearings src/Bearings.cpp) target_link_libraries(Bearings ${catkin_LIBRARIES}) add_dependencies(Bearings ar_track_alvar_msgs_AlvarMarker) And this is what the error in the terminal looks like: > /home/nissrine/catkin_ws/src/beginner_tutorials/src/Bearings.cpp:2:45:> fatal error:> ar_track_alvar_msgs/AlvarMarker.h: No> such file or directory compilation> terminated. make[2]: ***> [beginner_tutorials/CMakeFiles/Bearings.dir/src/Bearings.cpp.o]> Error 1 make[1]: ***> [beginner_tutorials/CMakeFiles/Bearings.dir/all]> Error 2 make: *** [all] Error 2> Invoking "make" failed> nissrine@nissrine-VirtualBox:~/catkin_ws$ I hope this helps, Thanks again for your help

Unmet dependencies pcl_ros

$
0
0
I am trying to install pcl-ros, but this error appears: **sudo apt-get install ros-indigo-pcl-ros** Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: ros-indigo-pcl-ros : Depends: libpcl-1.7-all but it is not going to be installed Depends: libpcl-1.7-all-dev but it is not going to be installed Depends: ros-indigo-pcl-conversions but it is not going to be installed E: Unable to correct problems, you have held broken packages. What should I do?

Package Manifest 2 - attribute version does not work

$
0
0
I am currently looking into versioning my catkin packages and making sure that I am using the correct versions. I am using Package Manifest Version 2 and according to [REP-140](http://www.ros.org/reps/rep-0140.html#build-depend-multiple), I should be able to specify the versions of my dependencies. E.g. I have a *package A* (version 1.1) and a *package B* that depends on *package A*. I now would like to make sure, that version 1.1 of *package A* is used when building *package B*. My package.xml's will contain the following (for the sake of simplicity, I only include the relevant parts): *package A* package.xml A1.1.0 ... *package B* package.xml B1.0.0A ... So far so good, everything compiles fine. **However, if I change that depend tag in *package B* package.xml** above, e.g. to A **..it still compiles fine!** *Meaning that it just does not care about the version attribute.* **What am I doing wrong?** ---------- *Edit: I just noticed that a warning is printed:* catkin_package() version mismatch: the package.xml of 'B' build_depends on 'A = 1.0.0', but 'A 0.9.0' found **Is this the expected behaviour or should the build fail?**

Generate deb from dependent res package locally

$
0
0
Hi everyone, I try to generate a deb file from a ros package A. This package depends on an other one B and I therefore added a build_depend and run_depend in the package.xml for A. This works well with catkin but didn't succeed to run bloom. rosdep can't resolve key B. I googled this issue and see that an option could be to fork rod bistro and hand tune index.yaml. This sounds to me a very complex task for just adding a dependency between package and I am wondering if it is possible to perform deb generation locally. Any help or idea about this? I read a lot of documentation but did not find any simple tutorials to achieve this issue directly. Best regards
Viewing all 98 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>