在ubuntu下对ROS进行编程很经常的会用到动态链接库的调用,而ROS中的编译系统为catkin_make,和常规的CMake略有不同,具体不同点可参考这篇博客(点击打开链接),这就需要正确配置CMakelists.txt文件,以便编译系统找到你引用的库和头文件。
总的来说其实很简单,下面将列举详细步骤和实例。
比如我需要引用一个动态链接库名字为libRobotBus.so。
与其对应的头文件有:
BytesObject.h
Common.h
DataObject.h
MessageBlock.h
MessageSerializable.h
MotorID.h
RobotMessage.h
RobotSession.h
1.将动态链接库(so文件)以及对应的头文件都保存到某一个文件夹.
这里我直接将其保存在我的工作空间的库文件夹中(include/test_so),我的工作空间(3_so_test_ws)的文件树如下所示:
└── src
├── CMakeLists.txt -> /opt/ros/indigo/share/catkin/cmake/toplevel.cmake