0
$\begingroup$

Rosanswers logo

Hi,

trying to run rqt on ubuntu 12.04 with ros/groovy

i did an apt install of ros-groovy-desktop and ros-groovy-rqt.

trying to start (as suggested on rqt/Userguide) via

$ rosrun rqt_gui rqt_gui 

leads to:

x75@rudi:~/ros_workspace$ rosrun rqt_gui rqt_gui
Traceback (most recent call last):
  File "/opt/ros/groovy/stacks/rqt/rqt_gui/bin/rqt_gui", line 15, in <module>
    from rqt_gui.main import Main
  File "/opt/ros/groovy/stacks/rqt/rqt_gui/src/rqt_gui/main.py", line 39, in <module>
    roslib.load_manifest('rqt_gui')
  File "/opt/ros/groovy/lib/python2.7/dist-packages/roslib/launcher.py", line 62, in load_manifest
    sys.path = _generate_python_path(package_name, _rospack) + sys.path
  File "/opt/ros/groovy/lib/python2.7/dist-packages/roslib/launcher.py", line 98, in _generate_python_path
    packages = get_depends(pkg, rospack) 
  File "/opt/ros/groovy/lib/python2.7/dist-packages/roslib/launcher.py", line 51, in get_depends
    vals = rospack.get_depends(package, implicit=True)
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 186, in get_depends
    s.update(self.get_depends(p, implicit))
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 180, in get_depends
    names = [p.name for p in self.get_manifest(name).depends]
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 118, in get_manifest
    return self._load_manifest(name)
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 157, in _load_manifest
    retval = self._manifests[name] = parse_manifest_file(self.get_path(name), self._manifest_name)
  File "/usr/lib/pymodules/python2.7/rospkg/rospack.py", line 149, in get_path
    raise ResourceNotFound(name, ros_paths=self._ros_paths)
rospkg.common.ResourceNotFound: qt_gui
ROS path [0]=/opt/ros/groovy/share/ros
ROS path [1]=/opt/ros/groovy/share
ROS path [2]=/opt/ros/groovy/stacks
x75@rudi:~/ros_workspace$ 

rospack reports fine:

x75@rudi:~/ros_workspace$ rospack find qt_gui
/opt/ros/groovy/share/qt_gui

not sure what i'm doing wrong.

cheers, opt


Originally posted by x75 on ROS Answers with karma: 161 on 2012-11-26

Post score: 4


Original comments

Comment by Patrick Bouffard on 2012-11-26:
FWIW, I had the same error initially. I cleaned out the pip versions of the python-* tools as described in @WilliamWoodall's answer, and now I get a segfault. This might be a bug: https://github.com/ros-visualization/rqt/issues/16

Comment by WilliamWoodall on 2012-11-26:
That might well be, there are some know issues related to different versions of pyqt and pyside on different distributions of Ubuntu. We are actively working to resolve these during the beta phase.

Comment by x75 on 2012-11-27:
Applying the solution below works fine overall. Instantiating the "Plot" plug-in with pyqtgraph leads to segfault, Matplotlib mode works, with intermittent segfaults. Needs further investigation.

Comment by WilliamWoodall on 2012-11-27:
What OS and version of the OS are you using? Can we also assume you are using the default pyqt and not pyside?

Comment by Dorian Scholz on 2012-11-27:
As mentioned above the segfault is most likely bug #16. If you are not using C++ Plugins (image_viewer and rviz [broken]) a quick workaround is to delete the C++ extension: sudo rm /opt/ros/groovy/lib/python2.7/dist-packages/qt_gui_cpp/libqt_gui_cpp_sip.so

Comment by x75 on 2012-11-27:
thx a lot, rqt/Plot now works with pyqtgraph. couple of issues: been using pyqt implicitly but discovered -b switch. pyside doesn't work at all. pyqtgraph needed downgrade to r223 (legend issues). had to tweak src/rqt_plot/plot.py so that plot_types[0] gets selected. missing instance setting dialog?

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

This might be related to the fact that qt_gui has recently been made wet. This might explain why rospack can find it, but rospkg cannot as older versions of rospkg could not detect wet dependencies. Can you make sure that you have the latest version of the python-* tools?

For Ubuntu first ensure that you don't have the pip versions installed by looking for and removing any ros* stuff in:

ls /usr/local/lib/python2.7/*-packages/

If you find ros* stuff there, uninstall with pip:

sudo pip uninstall rospkg rosdep catkin_pkg rosinstall vcstools
sudo pip uninstall rospkg rosdep catkin_pkg rosinstall vcstools # Yes twice

You should run the pip uninstall twice to ensure that both the apt-get and pip versions have been removed.

EDIT: Apparently you might need to run pip uninstall many times (once for each time you did pip install -U ...). So you should run the above command until you aren't asked to remove any files (it didn't find that package anywhere).

Then update and reinstall with apt-get:

sudo apt-get update
sudo apt-get install --reinstall python-rospkg python-rosdep python-catkin-pkg python-rosinstall python-vcstools

For other systems update via pip:

sudo pip install -U rospkg rosdep caktin-pkg rosinstall vcstools

Originally posted by WilliamWoodall with karma: 1626 on 2012-11-26

This answer was ACCEPTED on the original site

Post score: 11


Original comments

Comment by x75 on 2012-11-26:
that worked nice. thanks a lot.

Comment by ianohara on 2013-04-16:
As of 2013-04-16 this is still an issue. I did a clean install of groovy via the ros.org desktop-full instructions. I could then "rospack find tf" with no problem. A python script that does nothing but import rospy then import tf fails with "ResourceNotFound: tf". This answer fixed the problem.

Comment by Topsy_turvy on 2013-08-26:
It still did not work for me! Is it possible to manually add the package to the PYTHONPATH? Is there anyother solution ?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.