Comments (6)
possible solution would be to reuse pr2-grant program.
we should test by getting the source of this program building it and if it succeeds replace the bash script by this program.
shadow-robot/sr-ros-interface-ethercat#36
from ros_ethercat.
code is here :
https://code.ros.org/svn/pr2debs/trunk/packages/pr2/pr2-grant
and compiles fine on ubuntu precise and trusty as long as libcap-dev is installed.
a make install is not sufficient for user to execute pr2grant, additionally "chmod u+s /usr/bin/pr2-grant" must be used to set the sticky bit. I guess this can be done in an installation package [EDIT] actually this is done in the svn repository already in the debian folder. One should maybe consider keeping this package completely but have it installed in indigo ?[/EDIT].
from ros_ethercat.
@shadowmanos Are you happy with this:
- created a repo/package for ros_grant (https://github.com/shadow-robot/ros_grant)
- will release it applying patch to the bloom repo (http://answers.ros.org/question/191779/add-postinstall-rule-for-deb-package-creation/)
- added a readme for source install
- adding
ros_grant
tolaunch-prefix
for our different launch files
This should be low maintenance (hopefully release it once per ros distro).
from ros_ethercat.
As far as I can see, using the xxx-grant will not solve the issue of not finding the linked lib. As the only thing grant does is allow you to set capabilities without being sudo.
from ros_ethercat.
Comment from @shadowmanos (not sure why it's not appearing here)
Seems fine. Comments :
- We will also need a hydro-devel branch for our ronex drivers.
- If it's added in the launch files it should also be a runtime dependency in CMakeLists.txt and package.xml for every package that uses it in a launch file.
- If we are happy we should release this ASAP so that when we release a modified indigo-devel version of our hand bloom will find ros_grant in the servers.
from ros_ethercat.
I have found the cause (and a solution) to this issue.
When using capabilities (and also when using other things like setuid and setgid), the LD_LIBRARY_PATH variable is ignored, so the ROS linked libraries are not found.
The way this was solved for the pr2_ethercat executable is by using rpath
when linking the executable or libraries used by it that will have to find other libraries. (See following link)
http://wiki.ros.org/hydro/Migration#pr2_robot.2BAC8-HydroMigration.Controllers_and_RPath
from ros_ethercat.
Related Issues (20)
- Set param in server after loading driver for a slave
- separate hardware read and write
- missing install directives from CMakeLists.txt
- Implement and test JointCommandInterfaces
- Add functionality to CustomHW
- 'Motor halted' ERROR in the Diagnostic Viewer HOT 1
- Missing joint_state_publisher.launch in release HOT 1
- modify calibrate node to calibrate correct joints
- Adapt to ros_control combined RobotHW
- Dynamically load urdf given serial number
- Add diagnostics collection to RosEthercat
- Fix dependencies
- Modify RosEthercat to work with ros control properly HOT 4
- communicate servo with Ros through EtherCAT HOT 1
- Fix crash when error scanning ethercat slaves
- kinetic release?
- Support any servo motor with ethercat or just CoE servo motor
- ros_ethercat_eml is licensed under GPL HOT 1
- [ros_ethercat_loop] RPATH issues when using ethercat_grant on bionic
- Can not find ehtercat_grant in ros_ethercat_loop. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ros_ethercat.