量子通信的一些相关原理(量子通信是利用)
585
2022-05-30
2.3catkin创建系统
catkin是ROS的编译与构建系统,用来生成可执行文件、库和接口。首先进入工作区:
cd ~/catkin_ws
创建一个ROS包,其中depend是依赖库的名字:
catkin_create_pkg package_name depend1 depend2 depend3
每当创建完一个新包,编译之后都需要使用如下source命令更新环境:
source devel/setupbash
2.4ROS中的项目组织结构
ROS软件使用包(package)进行组织,通常包含以下内容:
◆ /src:源代码。
◆ /msg:定义各种message文件。
◆ /srv:定义各种service文件。
◆ /launch:包含用于启动节点的launch文件。
◆ /config:包含配置文件,加载一些动态配置参数等。
◆ /test: ROS测试文件。
◆ /include/_package_name_: C++头文件。
◆ /doc:包含文档文件。
◆ packagexml: 编译、运行、版权等信息。
◆ CMakeListstxt: CMakefile构建文件。
1 packagexml
在这个例子中,我们使用了roscpp的客户端库,同时使用了一个sensor_msgs消息。
2 CMakeListstxt
CMakeListstxt文件是CMake构建系统的输入,在这里我们不会详细讨论CMake的写法(因为它本身可以很复杂),只需大致熟悉一下常用的CMake语法:
◆ cmake_minimum_required:需要的CMake最低版本。
◆ project():包的名称。
◆ find_package():查找构建时需要的其他CMake/catkin包。
◆ add_message_files()/ add_service_files()/add_action_files():生成Message/Service/Action。
◆ generate_messages():调用消息生成。
◆ catkin_package():指定包的构建信息。
◆ add_library()/add_executable()/target_link_libraries():添加用于构建的库、可执行代码和目标链接库。
◆ install():安装规则。
自动驾驶
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。