? ? ? ? 最近在学习宾夕法尼亚大学工程学院的ROS公开课,在尽力的去融入全英语的环境(哪怕我的英语水准并不是很高)。既然是在学习,笔记也就是必须的了,当然这些笔记都是课程当中提出的问题,我去寻找后得出的答案,可能并不是最准确的,请一定要认真辨别。
????????CMakeLists.txt用于构建软件包的 CMake 构建系统的输入。任何符合CMake 的包都包含一个或多个 CMakeLists.txt 文件,用于描述如何生成代码以及将其安装到的位置。用于 catkin 项目的 CMakeLists.txt 文件是一个标准的 CMakeLists.txt 文件,具有一些附加约束。(通俗了讲就是记录了功能包的编译规则。)
1.CMake版本:cmake_minimum_required()
2.包名:project()
3.构建所需的其他CMake/Catkin软件包:find_package()
4.开启Python模块支持:catkin_python_setup()
5.消息/服务/操作生成器:add_message_files()、add_service_files()、add_action_files()
6.调用消息/服务/操作生成:generate_messages()
7.指定包构建信息导出?:catkin_package()
8.构建的库/可执行文件?:add_library()/add_executable()/target_link_libraries()
9.构建测试:catkin_add_gtest()
10.安装规则:install()
详情请查阅ROS官方文档(查看官方资料比网络流传更重要)catkin/CMakeLists.txt - ROS Wiki
是的,作用于C++文件的编译。
Python代码没有使用add_library()和?add_executable()函数
会的,但我目前还未经历过要使用的情况(我资历太浅)。
创建了。
在工作空间路径(也就是ws的位置)
???????$ source / opt / ros / kinetic ( melodic )/ setup . bash
? ? ? ?$ source devel / setup . bash
设置环境变量 (source devel/setup.bash)是为了系统能够找到这个工作空间,Ubuntu默认使用的终端是bash,需要在bash中设置ros环境变量,最好把它放在家目录的.bashrc目录下,以便系统启动时能够执行其中的source /opt/ros/kinetic/setup.bash指令,使得工作空间中的环境变量可以生效,这样系统终端能够读懂ros命令,执行相应的操作。