yujinrobot / yujin_ocs

Yujin Robot's open-source control libraries
http://wiki.ros.org/yujin_ocs
235 stars 178 forks source link

yocs_waypoint_provider: also install libraries #122

Closed bulwahn closed 7 years ago

bulwahn commented 7 years ago

To provide a package where all needed content is installed, also the two libraries waypoint_provider_lib and way_provider_yaml_parser_lib that are required by the waypoint_provider executable must be installed.

I became aware of this issue when creating bitbake recipes for the yocs_waypoint_provider package in the OpenEmbedded layer for ROS [1]. The bitbake tool chain reported the following warnings for the yocs_waypoint_provider 0.6.4, shipped in the indigo distribution:

WARNING: yocs-waypoint-provider-0.6.4-r0 do_package_qa: QA Issue: /opt/ros/indigo/lib/yocs_waypoint_provider/waypoint_provider contained in package yocs-waypoint-provider requires libwaypoint_provider_lib.so, but no providers found in RDEPENDS_yocs-waypoint-provider? [file-rdeps]
WARNING: yocs-waypoint-provider-0.6.4-r0 do_package_qa: QA Issue: /opt/ros/indigo/lib/yocs_waypoint_provider/waypoint_provider contained in package yocs-waypoint-provider requires libwaypoint_provider_yaml_parser_lib.so, but no providers found in RDEPENDS_yocs-waypoint-provider? [file-rdeps]

These two warnings pointed out that the two libraries in yocs_waypoint_provider were not installed.

[1] https://github.com/bmwcarit/meta-ros

bulwahn commented 7 years ago

A further personal note: I do not understand if, how and why it actually properly installs for the Ubuntu setup, but I assume that if it currently works, there is a further copy operation in the deployment script for Ubuntu; this could be then removed as the libraries are properly installed.

bit-pirate commented 7 years ago

A further personal note: I do not understand if, how and why it actually properly installs for the Ubuntu setup,

Have you tested that? This tool is currently not used in any of our robots. It might be that it is just broken.

bulwahn commented 7 years ago

No, I have not tested it on Ubuntu. If you have time could you check if it has been broken in Ubuntu?

bit-pirate commented 7 years ago

It is indeed broken. Tested with the indigo branch:

$ roslaunch yocs_waypoint_provider provider.launch --screen
... logging to /home/marcus/.ros/log/e0b14290-d7b7-11e6-9662-7824afa0d31a/roslaunch-pirate-nest-10262.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.

started roslaunch server http://pirate-nest:33047/

SUMMARY
========

PARAMETERS
 * /rosdistro: indigo
 * /rosversion: 1.11.20
 * /waypoint_provider/filename: /opt/groot/yujin_...

NODES
  /
    waypoint_provider (yocs_waypoint_provider/waypoint_provider)

auto-starting new master
process[master]: started with pid [10274]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to e0b14290-d7b7-11e6-9662-7824afa0d31a
process[rosout-1]: started with pid [10287]
started core service [/rosout]
/opt/groot/yujin_ocs_ws/install/lib/yocs_waypoint_provider/waypoint_provider: error while loading shared libraries: libwaypoint_provider_lib.so: cannot open shared object file: No such file or directory
process[waypoint_provider-2]: started with pid [10290]
[waypoint_provider-2] process has died [pid 10290, exit code 127, cmd /opt/groot/yujin_ocs_ws/install/lib/yocs_waypoint_provider/waypoint_provider __name:=waypoint_provider __log:=/home/marcus/.ros/log/e0b14290-d7b7-11e6-9662-7824afa0d31a/waypoint_provider-2.log].
log file: /home/marcus/.ros/log/e0b14290-d7b7-11e6-9662-7824afa0d31a/waypoint_provider-2*.log

And your PR resolves it.

@stonier how would we proceed with releasing this? Any stoppers? I noticed yocs_msgs would be needed to be released as well, when using the current state of devel.

bulwahn commented 7 years ago

This commit can also be simply cherry-picked and rebased on the indigo branch. I actually investigated the issue and initially created the commit on the indigo branch, and then rebased it to the devel branch for this pull request.

stonier commented 7 years ago
bit-pirate commented 7 years ago

@stonier not releasing for Indigo on purpose?

stonier commented 7 years ago

Seems there are some unreleased changes in indigo yocs from various people that will probably break stuff. I'd have to resolve them to release it. We don't have a need for continued support on indigo right now and at this point I'm happy to switch support for releasing solely on kinetic unless a necessary reason comes along to do differently.

bit-pirate commented 7 years ago

@bulwahn I see that you are working on Indigo. Is this fix in source enough or do you rely on the debs?