tork-a / ros_seminar

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

How can I install gstreamer0.10-gconf from rosdep install? #28

Closed 7675t closed 7 years ago

7675t commented 7 years ago

The my_navigation package in navigation seminar depends on pocketsphinx and gstreamer0.10-gconf so I added run_depend into package.xml as:

  <run_depend>gstreamer0.10-gconf</run_depend>

Then

$ rosdep install -y -r --from-paths src --ignore-src

But I got error:

ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
my_navigation: Cannot locate rosdep definition for [gstreamer0.10-gconf]

How can I fix this?

@534o @130s

130s commented 7 years ago

What about gstreamer0.10-pocketsphinx as defined in rosdep database? So goes like:

<run_depend>gstreamer0.10-pocketsphinx</run_depend>
7675t commented 7 years ago

Yes, you are right. I should have looked the database. But unfortunately, gstreamer0.10-pocketsphinx doesn't seem to install gstreamer0.10-gconf in this case. Maybe I should install it manually for now...

Thank you!

130s commented 7 years ago

For pocketsphinx they are listed, which was added a few months ago. Please make sure you run rosdep update to update the local rosdep db and try again.

gstreamer0.10-gconf was indeed not listed, so I opened https://github.com/ros/rosdistro/pull/15251

7675t commented 7 years ago

Yeah, I did rosdep update and gstreamer01.0-gconf are not installed. I think I can apt-get it for a while. Thanks.

7675t commented 7 years ago

I'm afraid we are too haste to feed this back to upstream...

Ive just noticed, ros-indigo-pocketsphinx is not also installed by rosdep install. when my_navigation/package.xml contains:

  <run_depend>pocketsphinx</run_depend>
  <run_depend>gstreamer0.10-pocketsphinx</run_depend>

Then after rosdep update & rosdep install

tork@ubuntu:~/catkin_ws$ rosdep install -y -r --from-paths src --ignore-src
#All required rosdeps installed successfully

ros-indigo-pocketsphinx not seems to be installed. And I get error to run my_navigation/recognizer.launch.

tork@ubuntu:~/catkin_ws$ roslaunch my_navigation recognizer.launch 
... logging to /home/tork/.ros/log/e6712b24-522c-11e7-a6d7-0022cfe4e20f/roslaunch-ubuntu-20061.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

Traceback (most recent call last):
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/__init__.py", line 307, in main
    p.start()
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 268, in start
    self._start_infrastructure()
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 217, in _start_infrastructure
    self._load_config()
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 132, in _load_config
    roslaunch_strs=self.roslaunch_strs, verbose=self.verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/config.py", line 451, in load_config_default
    loader.load(f, config, verbose=verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 746, in load
    self._load_launch(launch, ros_config, is_core=core, filename=filename, argv=argv, verbose=verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 718, in _load_launch
    self._recurse_load(ros_config, launch.childNodes, self.root_context, None, is_core, verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 654, in _recurse_load
    n = self._node_tag(tag, context, ros_config, default_machine, verbose=verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 95, in call
    return f(*args, **kwds)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 406, in _node_tag
    self._param_tag(t, param_ns, ros_config, force_local=True, verbose=verbose)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 95, in call
    return f(*args, **kwds)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 256, in _param_tag
    vals = self.opt_attrs(tag, context, ('value', 'textfile', 'binfile', 'command'))
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 202, in opt_attrs
    return [self.resolve_args(tag_value(tag,a), context) for a in attrs]
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 183, in resolve_args
    return substitution_args.resolve_args(args, context=context.resolve_dict, resolve_anon=self.resolve_anon)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 312, in resolve_args
    resolved = _resolve_args(resolved, context, resolve_anon, commands)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 325, in _resolve_args
    resolved = commands[command](resolved, a, args, context)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 141, in _find
    source_path_to_packages=source_path_to_packages)
  File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 184, in _find_executable
    full_path = _get_executable_path(rp.get_path(args[0]), path)
  File "/usr/lib/python2.7/dist-packages/rospkg/rospack.py", line 200, in get_path
    raise ResourceNotFound(name, ros_paths=self._ros_paths)
ResourceNotFound: pocketsphinx
ROS path [0]=/opt/ros/indigo/share/ros
tork@ubuntu:~/catkin_ws$ dpkg -l |grep pocketsphinx
ii  gstreamer0.10-pocketsphinx                            0.8.0+real-0ubuntu6                                 amd64        lightweight speech recognition - GStreamer plugin
ii  libpocketsphinx1                                      0.8.0+real-0ubuntu6                                 amd64        lightweight speech recognition - library
ii  pocketsphinx-hmm-en-hub4wsj                           0.8.0+real-0ubuntu6                                 all          lightweight speech recognition - English acoustic model
ii  pocketsphinx-lm-en-hub4                               0.8.0+real-0ubuntu6                                 all          lightweight speech recognition - HUB4 language model
ii  pocketsphinx-utils                                    0.8.0+real-0ubuntu6                                 amd64        lightweight speech recognition - command-line tools

You can reproduce it following ROS navigation workshop tutorial. I don't know how to fix it, but I think this is a tiny problem for just us. We have another choice to fix our ROS image to install them in advance.

7675t commented 7 years ago

I guess this is caused by the name of name 'pocketsphinx' in base.yaml is identical to ROS package name (ros-indigo-pocketsphinx). Is it correct?

7675t commented 7 years ago

So may be this PR(https://github.com/ros/rosdistro/pull/14126) overwriten original setting to install ros-indigo-pocketsphinx, Is it correct?

If it is, just guessing, the base.yaml should be like this? I don't know how I can try it locally.

 pocketsphinx:
    fedora: [pocketsphinx]
    ubuntu:
 +    precise: [pocketsphinx, libsphinxbase1]
 +    quantal: [pocketsphinx, libsphinxbase1]
 +    raring: [pocketsphinx, libsphinxbase1]
 +    saucy: [pocketsphinx, libsphinxbase1]
 +    trusty: [pocketsphinx, libsphinxbase1]
 +    utopic: [pocketsphinx, libsphinxbase1]
 +    vivid: [pocketsphinx, libsphinxbase1]
 +    wily: [pocketsphinx, libsphinxbase1]
      xenial: [pocketsphinx]
      yakkety: [pocketsphinx]
      zesty: [pocketsphinx]
k-okada commented 7 years ago

So may be this PR(ros/rosdistro#14126) overwriten original setting to install ros-indigo-pocketsphinx, Is it correct?

yes, there is implicit rule that ros release package name and rosdep key name in base.yaml/python.yaml should be uniquely determined.

If it is, just guessing, the base.yaml should be like this? I don't know how I can try it locally.

base yaml defines key to system installed packages, not ros packages, so

- pocketsphinx:
+ libpocketsphinx:

or , release https://github.com/mikeferguson/pocketsphinx as pocketsphinx_ros ore somthing

https://github.com/ros/rosdistro/pull/14126#issuecomment-308906350

7675t commented 7 years ago

I see, thanks. I don't rush.

k-okada commented 7 years ago

done

wait and see....

-- ◉ Kei Okada

2017-06-16 12:19 GMT+09:00 7675t notifications@github.com:

I see, thanks. I don't rush.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/tork-a/ros_seminar/issues/28#issuecomment-308922321, or mute the thread https://github.com/notifications/unsubscribe-auth/AAeG3ElBGPvYPwqIbtGL6U4ze6Djxhcsks5sEfQ5gaJpZM4N6reu .

7675t commented 7 years ago

This is solved. Thank you all!