[英]Load shared libraries from lib directory in CMake?
我已经从示例存储库下载了一个 ROS2 演示。
具体来说,我使用了minimum_subscriber和minimum_publisher 。
我将 ROS2 安装在/opt/ros2
,当我使用colcon build
构建这两个示例时,它会生成一个install/
目录,其中包含lib/
、 shared/
和其他常用目录结构。
我可以在我的机器上用我当前的设置完美地执行和运行这些演示,但是这些可执行文件链接到/opt/ros2
存在的库,所以当我想在没有安装 ROS2 的另一台机器上执行它们时,或者我将我的 ROS2 安装移动到我的机器,可执行文件找不到共享对象。
我添加了一个非常简单的脚本,在构建时将所有依赖项添加到install/lib
但可执行文件似乎并不关心,他们没有在生成的lib
目录中寻找共享库,他们一直试图在/opt/ros2
搜索/opt/ros2
。
我相信这是我应该在 CMake 中解决的问题,它不是特定于 ROS2 的,所以,有什么方法可以告诉我生成的可执行文件在不同的目录中搜索吗? ( ../lib
或./lib
在我的情况下)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.