ROS系统学习已经有几周了,但是感觉学的效率有点低。不过还是要把总结先写了,以尽快进入下一阶段学习。
PS:这篇总结主要是根据MOOC网中科院老师的讲义来的。
推荐学习,网址:https://www.icourse163.org/learn/ISCAS-1002580008?tid=1002759011#/learn/content?type=detail&id=1003899799&cid=1004769692
-
catkin编译系统
catkin的诞生是为了替代rosbuild一个Catkin的软件包( package) 必须要包括两个文件:
package.xml: 包括了package的描述信息
name, description, version, maintainer(s), license
opt. authors, url’s, dependencies, plugins, etc…CMakeLists.txt: 构建package所需的CMake文件
调用Catkin的函数/宏
解析 package.xml
找到其他依赖的catkin软件包
将本软件包添加到环境变量
catkin的编译指令为catkin_make。catkin_make一般在创建包之后使用,它可以帮你写好部分CMakeLists和package.xml的内容,所以每一次包的内容修改之后就catkin_make一下。就像编完代码要运行之前必须先编译。catkin_make也可以有一些参数如下:catkin_make [args]
-h, --help 帮助信息
-C DIRECTORY, --directory DIRECTORY 工作空间的路径 (默认为 ‘.’)
–source SOURCE src的路径 (默认为’workspace_base/src’)
–build BUILD build的路径 (默认为’workspace_base/build’)
–use-ninja 用ninja取代make
–use-nmake 用nmake取’make
–force-cmake 强制cmake, 即使已经cmake过
–no-color 禁止彩色输出(只对catkin_make和CMake生效)
–pkg PKG [PKG …] 只对某个PKG进行make
–only-pkg-with-deps ONLY_PKG_WITH_DEPS [ONLY_PKG_WITH_DEPS …]
将指定的package列入白名单CATKIN