ROS基础:功能包的创建与编译

创建

如果你使用的是catkin编译系统,那么可以很容易地创建一个功能包。首先进入你的工作空间的src目录下:

$ cd ~/catkin_ws/src

然后运行catkin_create_pkg命令:

$ catkin_create_pkg my_pkg std_msgs roscpp

NOTE:可以使用tab补全命令。

catkin_create_pkg的第一个参数是功能包的名字,其余的参数是该功能包的依赖项。命令格式如下所示:

$ catkin_create_pkg [package name] [depend1] [depend2] ...

编译

如果你在功能包中写了一些代码,那么我们需要对该功能包进行编译:

$ cd ~/catkin_ws
$ catkin_make

NOTE:catkin_make命令必须在工作空间下面使用,否则会报错。

上面的命令是对工作空间中所有的功能包进行编译,如果想单独编译一个功能包,可以在catkin_make后使用必要的参数:

$ catkin_make --pkg [package name]

编译好之后,最好运行下面的命令,这样的话你就可以通过包名来运行你的程序了:

. ~/catkin_ws/devel/setup.bash

tip:我习惯于将上面的命令添加到.bashrc中,这样就不用每次运行这个命令了。

参考资料

  1. ROS By Example, R. PATRICK GOEBEL著, 中山大学出版社
  2. ROS wiki: Creating a ROS Package

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ROS(Robot Operating System)是一个用于机器人开发的开源框架,它提供了一系列的工具和库,使机器人开发更加高效和便捷。在ROS中,功能是最基本的组织单元,它含了所有相关的代码、配置文件和资源等,用于实现特定的功能。 下面是ROS功能创建编译过程: 创建一个功能: 1. 打开终端,进入ROS工作空间的src目录下 2. 运行以下命令来创建一个新的功能: ``` catkin_create_pkg <package_name> [dependency1] [dependency2] [dependency3] ``` 其中,`<package_name>`是你想要创建功能的名称,`[dependency1] [dependency2] [dependency3]`是该功能所依赖的其他功能的名称,如果没有依赖,则可以省略。 3. 进入新创建功能目录下,可以看到已经创建了一些默认的文件夹和配置文件,如`src`、`include`、`launch`等。 编写代码和配置文件: 1. 在`src`目录下创建源文件,例如`my_node.cpp`。 2. 编写代码,实现你想要的功能。 3. 在`CMakeLists.txt`文件中添加源文件和依赖项,以便编译时能够找到和链接它们。 4. 在`package.xml`文件中添加依赖项和其他必要的信息。 编译功能: 1. 打开终端,进入ROS工作空间的根目录。 2. 运行以下命令构建整个工作空间: ``` catkin_make ``` 这会编译所有的功能和依赖项,并生成可执行文件和库文件。 3. 运行以下命令,激活ROS环境: ``` source devel/setup.bash ``` 4. 运行你的节点,例如: ``` rosrun <package_name> my_node ``` 至此,你已经成功创建了一个ROS功能,并编写了代码和配置文件,并且通过编译和运行验证了你的代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值