基于ROS2写了一个node节点,其中需要链接一个共享库,在编译时没有问题,但是在运行时提示找不到这个共享库
error while loading shared libraries: libseg_ground.so: cannot open shared object file: No such file or directory
第一步:
在共享库的CMakeLists.txt后面加入以下内容,seg_ground
是共享库的名字
install(
TARGETS seg_ground
DESTINATION lib/${PROJECT_NAME}
)
第二步:
在ROS2节点程序的CMakeLists.txt中加入以下内容,第一个install()
是告诉程序共享库的位置,第二个install
是告诉程序可执行文件的位置
install(
DIRECTORY lib/
DESTINATION lib
)
install(
TARGETS ${PROJECT_NAME}
DESTINATION lib/${PROJECT_NAME}
)