Quantcast

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users



Thanks for the hint, but it didn't help:
    ufechner@tuxedo:~$ source ~/ros2_install/ros2-linux/setup.bash
    ufechner@tuxedo:~$ talker
    talker: error while loading shared libraries: librclcpp.so: cannot open shared object file: No such file or directory
    ufechner@tuxedo:~$ locate librclcpp.so
    /home/ufechner/ros2_install/ros2-linux/lib/librclcpp.so
    ufechner@tuxedo:~$

The file librclcpp.so does exist, though.

Any more tips?






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/3) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users



The following changes solved two problems:

Firstly, the environment variable LD_LIBRARY_PATH is deleted by
Ubuntu for security reasons. Additional paths have to be added
to a new file in the directory /etc/ld.so.conf.d

For example by doing

sudo gedit /etc/ld.so.conf.d/ros2.conf

and adding the line:

    /home/<username>/ros2_install/ros2-linux/lib

    Replace <username> with your own username.

and executing
     
    sudo ldconfig

Furthermore, one package was missing:

sudo apt-get install libpocofoundation9v5

-----------------------------------------

Now I get a different error message:

    ufechner@tuxedo:~$ talker
    terminate called after throwing an instance of 'std::runtime_error'
      what():  could not create publisher: type support not from this implementation, at /home/rosbuild/ci_scripts/ws/src/ros2/rmw_fastrtps/rmw_fastrtps_cpp/src/functions.cpp:782, at /home/rosbuild/ci_scripts/ws/src/ros2/rcl/rcl/src/rcl/publisher.c:81
    Aborted (core dumped)
    ufechner@tuxedo

Any idea, how to fix this?

Uwe






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/4) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users



[quote="ufechner7, post:4, topic:1236"]
Firstly, the environment variable LD_LIBRARY_PATH is deleted byUbuntu for security reasons. Additional paths have to be addedto a new file in the directory /etc/ld.so.conf.d
[/quote]

That's surprising since we've never run into this on our Xenial machines. Perhaps you have a flavor of Ubuntu that is setting some additional security settings? According to their wiki you can set `LD_LIBRARY_PATH` so long as it is in an interactive shell:

https://help.ubuntu.com/community/EnvironmentVariables#File-location_related_variables

This sounds like one of the features macOS's SIP system (which we have to disable to get our binaries to work on macOS):

https://en.wikipedia.org/wiki/System_Integrity_Protection

> Furthermore, one package was missing:

> sudo apt-get install libpocofoundation9v5

We should probably add this to the prerequisites list (at least) on the binary installation wiki page: https://github.com/ros2/ros2/wiki/Linux-Install-Binary#installing-prerequisites

> Any idea, how to fix this?

As for the new error you're seeing, that's something we've seen before, basically for some reason it is trying to use two different backends for ROS 2 at the same time (one for message passing and a different one for type support) which results in that error. This usually doesn't happen in the binaries (unless I'm just unfamiliar with this problem with beta 1 on Linux) since we only build for Fast-RTPS in our binaries.

Can you double check you are not mixing the binaries and older binaries or builds of ROS 2?






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/5) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users



[quote="wjwwood, post:5, topic:1236"]
We should probably add this to the prerequisites list (at least) on the binary installation wiki page: https://github.com/ros2/ros2/wiki/Linux-Install-Binary#installing-prerequisites
[/quote]

@dirk-thomas can you confirm this is the right package to install?






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/6) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users



[quote="wjwwood, post:6, topic:1236"]
We should probably add this to the prerequisites list (at least) on the binary installation wiki page: https://github.com/ros2/ros2/wiki/Linux-Install-Binary#installing-prerequisites

@dirk-thomas can you confirm this is the right package to install?
[/quote]

For use from binary `libpocofoundation9v5` looks correct. For building from source you will likely need `libpoco-dev`.






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/7) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Discourse.ros.org] [Next Generation ROS/Troubleshooting] ROS2 beta on Ubuntu 16.04 fails

flobotics robotics via ros-users
In reply to this post by flobotics robotics via ros-users



[quote="wjwwood, post:5, topic:1236"]
That's surprising since we've never run into this on our Xenial machines. Perhaps you have a flavor of Ubuntu that is setting some additional security settings? According to their wiki you can set LD_LIBRARY_PATH so long as it is in an interactive shell:

https://help.ubuntu.com/community/EnvironmentVariables#File-location_related_variables

This sounds like one of the features macOS's SIP system (which we have to disable to get our binaries to work on macOS):


 
    en.wikipedia.org
 
 
   

System Integrity Protection

System Integrity Protection (SIP, sometimes referred to as rootless) is a security feature of Apple's macOS operating system introduced in OS X El Capitan. It comprises a number of mechanisms that are enforced by the kernel. A centerpiece is the protection of system-owned files and directories against modifications by processes without a specific "entitlement", even when executed by the root user or a user with root privileges (sudo). Apple says that the root user can be a significant risk factor...
[/quote]

I ran into this reference suggesting that if you're in the group utmp it will be removed?

https://superuser.com/questions/27376/why-does-my-ld-library-path-get-unset-launching-terminal

@ufechner7 are you running your tests inside a temporary user account or have you turned on higher than usual security?

In the man for ld.so(8)
```
       LD_LIBRARY_PATH
              A  list  of  directories  in  which to search for ELF libraries at execution-time.  The items in the list are separated by
              either colons or semicolons.  Similar to the PATH environment variable.  This  variable  is  ignored  in  secure-execution
              mode.
```






---
[Visit Topic](https://discourse.ros.org/t/ros2-beta-on-ubuntu-16-04-fails/1236/8) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list
[hidden email]
http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>
Loading...