[ros-users] [Discourse.ros.org] [Next Generation ROS] Ament best practice for sharing libraries

Geoffrey Biggs ros.discourse at gmail.com
Fri Jan 5 07:21:10 UTC 2018



What's the recommended best practice for exporting a library from a package for use in another package?

My specific use case is exporting composable nodes as a shared libraries from some packages and using those in another package that does link-time composition, but I imagine this is going to be a common use case.

>From poking around in the `rclcpp` `CMakeLists.txt`, this is what I've come up with. I'm not 100% sure about the purpose of the `ament_export_dependencies` lines, and I'm also assuming that I still need to manually install include files just like libraries since this seems the logical thing.

```
ament_export_dependencies(ament_cmake)
ament_export_dependencies(rclcpp)
ament_export_dependencies(class_loader)

ament_export_include_directories(include)

ament_export_libraries(displayer_component)
```

It works, but is it correct?





---
[Visit Topic](https://discourse.ros.org/t/ament-best-practice-for-sharing-libraries/3602/1) or reply to this email to respond.




More information about the ros-users mailing list