tork-a / ros_seminar

Packages for ROS seminar held by TORK
4 stars 6 forks source link

rosdep can't resolve dependency keys #14

Closed 130s closed 9 years ago

130s commented 9 years ago

Using livecd,

ubuntu@ubuntu:~/catkin_ws$ sudo rosdep init
Wrote /etc/ros/rosdep/sources.list.d/20-default.list
Recommended: please run

    rosdep update

ubuntu@ubuntu:~/catkin_ws$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml
Add distro "groovy"
Add distro "hydro"
Add distro "indigo"
Add distro "jade"
updated cache in /home/ubuntu/.ros/rosdep/sources.cache
ubuntu@ubuntu:~/catkin_ws$ rosdep install --from-paths src --ignore-src -r -y
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
stackit_robot_description: Cannot locate rosdep definition for [xacro]
my_onedof_control: Cannot locate rosdep definition for [dynamixel_controllers]
my_moveit_sample: Cannot locate rosdep definition for [rospy]
stackit_robot_ikfast_whole_arm_plugin: Cannot locate rosdep definition for [pluginlib]
rospy_tutorials: Cannot locate rosdep definition for [std_msgs]
roscpp_tutorials: Cannot locate rosdep definition for [std_msgs]
turtlesim: Cannot locate rosdep definition for [std_srvs]
stackit_robot: Cannot locate rosdep definition for [dynamixel_controllers]
stackit_robot_moveit_config: Cannot locate rosdep definition for [xacro]
Continuing to install resolvable dependencies...
#All required rosdeps installed successfully
534o commented 9 years ago

this is very likely to forget source /opt/ros... ,rosdep install need ROS_DISTRO environment variables. we realized this is very FAQ so need to warn somewhere, for example

$ git diff
diff --git a/src/rosdep2/sources_list.py b/src/rosdep2/sources_list.py
index 171230a..1194599 100644
--- a/src/rosdep2/sources_list.py
+++ b/src/rosdep2/sources_list.py
@@ -277,6 +277,8 @@ class DataSourceMatcher(object):
         :returns: :class:`DataSourceMatcher`
         """
         distro_name = rospkg.distro.current_distro_codename()
+        if distro_name is None:
+            print("WARNING: could not find current distro codename, please check ROS_DISTRO environment variable", file=sys.stderr)
         if os_override is None:
             os_detect = rospkg.os_detect.OsDetect()
130s commented 9 years ago

That was it, thank you very much. And PR is opened https://github.com/ros-infrastructure/rosdep/issues/384.