rospack depends1 error, rosdep version?
I am trying to install Hydro on Ubuntu 12.04. I follow the directions straight through, everything seems to install perfectly fine. I make my way through the tutorials until I make it to creating an ROS package. (I'd include the link to the tutorial here as the tutorial itself recommends, but I have insufficient karma to do so).
When I try to run the line " $ rospack depends1 beginner_tutorials "
It throws an error, telling me that my rosdep version needs to be at least 0.10.40. (Sorry I'm on a different computer right now...I will try to reproduce the full error message and post it here in an edit ASAP).
I check my rosdep version with " $ rosdep --version ", and it tells me that I have 0.10.27 installed.
First, I'm very confused: following the tutorials from installation all the way here lead me to install versions that are already out of date and can't work. Did I miss something? I spend the next few hours trying to install some kind of newer version of rosdep, but I think there is something majorly wrong with my python installations (I have a couple versions and I haven't tightly controlled PYTHONPATH, etc. -- I'm new to python and basically never use it).
So bottom line, 3 questions:
Did I miss something in the installation tutorial that would automatically install the proper rosdep version?
If not, can the tutorial change to address this issue somehow?
Can anyone recommend a tutorial on proper installation (and removing improper installation!) and PYTHONPATH setup for the python version that ROS Hydro needs?
EDIT 1: The full error message:
$ rospack depends1 beginner_tutorials
ImportError: No module named rosdep2.rospack
ImportError: No module named rosdep2.rospack
[rospack] Error: could not find python module 'rosdep2.rospack'. is rosdep up-to-date (at least 0.10.4)?
EDIT 2: I added to PYTHONPATH PYTHONPATH=/opt/ros/hydro/lib/python2.7/dist-packages:/usr/lib/pymodules/python2.7/rosdep2 because I found rosdep2/rospack.py in that folder. Now I get a different error:
$ rospack depends1 beginner_tutorials
Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/rosdep2/__init__.py", line 40, in <module>
from .installers import InstallerContext, Installer, \
File "/usr/lib/pymodules/python2.7/rosdep2/installers.py", line 35, in <module>
from rospkg.os_detect import OsDetect
File "/usr/lib/pymodules/python2.7/rospkg/__init__.py", line 43, in <module>
from .rospack import RosPack, RosStack, \
File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 34, in <module>
from xml.etree.cElementTree import ElementTree
File "/usr/local/lib/python2.7/xml/etree/cElementTree.py", line 3, in <module>
from _elementtree import *
ImportError: /usr/local/lib/python2.7/lib-dynload/_elementtree.so: undefined symbol: PyUnicodeUCS2_DecodeUTF8
Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/rosdep2/__init__.py", line 40, in <module>
from .installers import InstallerContext, Installer, \
File "/usr/lib/pymodules/python2.7/rosdep2/installers.py", line 35, in <module>
from rospkg.os_detect import OsDetect
File "/usr/lib/pymodules ...
The latest rosdep version is 0.10.27. Can you please post your exact error message? I guess the error message just said "at least 0.10.4".
What instructions are you following? If you follow these instructions http://wiki.ros.org/hydro/Installation/Ubuntu line for line it should work fine. For us to help you more. You need to provide a lot more details about what steps you are following.
Those are the exact instructions I used. Line by line.
You're doing things that are much too complicated. You must have state on the system which is not standard. I notice /usr/local in your tracebacks suggesting you've installed custom modules. Are there other modifications to the system?
I had installed python 2.7.6 and python 3.4 with default options before attempting to install ROS hydro. I agree with you, I think that there are some serious low level conflicts going on here that are beyond my skill. I installed Ubuntu 14.04 and installed ROS Indigo first, which works fine so far.