ROS
TrevorTung
一个不会物理的机械工程师不是一个好的程序员。
展开
-
ROS CMakeLists.txt 中的 add_dependencies
当项目内有新建的msg/srv时,需要确保项目内的msg和srv被编译,再编译target,因此需要添加以下宏add_dependencies(program_name ${${PROJECT_NAME}_EXPORTED_TARGETS} )与${catkin_EXPORTED_TARGETS} 的联系和区别写在这个网页when-is-catkin_exported_targets-needed...原创 2022-05-13 21:33:47 · 722 阅读 · 0 评论 -
ROS CMakeLists.txt中的 target_link_libraries
target_link_libraries(${PROJECT_NAME}_node ${catkin_LIBRARIES})使得 catkin可以找到需要链接的库文件,包括ros::init这种语句的定义,如果不使用这句话,会导致undefined reference to ... 编译错误原创 2022-02-23 00:06:00 · 543 阅读 · 0 评论 -
ROS包含header-only包的头文件
有些c++库是header-only的,只需要包含头文件就可以进行编译,但是在一个ROS空间中,如果多个包都需要这个header-only库,最好还是把这个header-only库放在一个单独的包里,这个包是不需要编译的,其作用仅仅是管理一下header-only库的头文件,好处是如果这个header-only的库内容有了改变,只需要改变这个包中的头文件。网上大部分设计ROS包含其他包的头文件的博文都是为了链接其他包所编译出来的库,本文目的在于强调被包含的包是header-only库时候的做法。以下用一个原创 2021-11-15 22:34:01 · 1114 阅读 · 0 评论 -
如何令ros melodic能够兼容ros indigo的message
问题描述:从ros indigo记录下来的rosbag遇到ros melodic就会报以下错误:Client wants topic xxxxx to have datatype/md5sum [xxxxx], but our version has [xxxxx]. Dropping connection思路:改所有的client,遇到一个改一个,因为rosbag是没办法改的了。从git...原创 2018-11-22 17:01:52 · 2355 阅读 · 0 评论