ros学习记录1 Hello World 使用c++

本文分享了从创建catkin工作空间,到编写并编译ROS节点,包括catkin_create_pkg、cmake配置、运行过程中的注意事项,如空格替换、编译错误排查等,适合初学者入门ROS+C++开发。
摘要由CSDN通过智能技术生成

声明:整个学习是我跟着奥特学园进行的,不是原创,只是记录自己的学习过程

步骤

创建命名空间

mkdir -p catkin_ws/src //其中前者是工作空间的名称,后者为存放源码的位置
cd ./catkin_ws
catkin_make//在工作空间里进行编译操作

创建功能包

在catkin_ws/src中创建功能包,xxx为名字

catkin_create_pkg xxx roscpp std_msgs

修改配置文件cmakelists

注意取消注释

add_executable(节点名
  src/源文件名.cpp
)
target_link_libraries(节点名
  ${catkin_LIBRARIES}
)

编译

首先对修改后的工作空间catkin_make一下,然后

cd 工作空间
source ./devel/setup.bash
rosrun 包名 C++节点

坑:

1、第一步catkin_make的位置不对,应该在工作空间目录下进行
2、在修改配置文件时,需要取消掉前面的注释
3、最后一步运行时出现“已放弃(核心已转储)”,是因为cpp文件里,执行ros节点初始化时,初始化的名称里面不能有空格,只能用下划线代替空格
4、新建功能包的指令为catkin_create_pkg xxx roscpp std_msgs,注意是msgs,不是msg

#include "ros/ros.h"

int main(int argc, char *argv[])
{
    //执行 ros 节点初始化
    ros::init(argc,argv,"hello");
    //如果是ros::init(argc,argv,"hello world"),就会出现3中的错误
    //创建 ros 节点句柄(非必须)
    ros::NodeHandle n;
    //控制台输出 hello world
    ROS_INFO("hello world");

    return 0;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值