ROS工作空间搭建和功能包创建与编译

1、ROS的工作空间设置搭建

mkdir -p ~/test_catkin_ws/src       

//-p,在创建目录的时候父目录不存在则一并创建;~,用户目录

cd ~/test_catkin_ws/src
catkin_init_workspace

//初始化工作空间

cd ~/test_catkin_ws
catkin_make

//catkin_make命令行工具简化了catkin的标准工作流程,可以认为catkin_make是在CMake标准工作流程中依次调用了cmake和make

完成环境变量配置。

source devel/setup.bash

//实际上只是重新加载了setup.bash文件,开启新终端后找不到这个工作空间中的功能包

可以将上面的命令行添加到~/.bashrc文件里,这样每次打开新终端就会加载命令行并配置环境:

echo "source test_catkin_ws/devel/setup.bash" >> ~/.bashrc

或者

sudo gedit ~/.bashrc

在文件末尾加上
source test_catkin_ws/devel/setup.bash

2、创建ros功能包

$  cd ~/catkin_ws/src

现在使用catkin_create_pkg命令来创建一个名为’hello ’的新程序包,这个程序包依赖于std_msgs、roscpp和rospy:

$  catkin_create_pkg hello std_msgs rospy roscpp

Created file beginner_tutorials/package.xml
Created file beginner_tutorials/CMakeLists.txt
Created folder beginner_tutorials/include/beginner_tutorials
Created folder beginner_tutorials/src
Successfully created files in /home/yongqiang/catkin_ws/src/beginner_tutorials. Please adjust the values in package.xml.

3、功能包的编译

这里使用catkin_make工具,此时注意必须在工作空间目录下运行该命令工具。

cd ~/test_catkin_ws/
catkin_make

上面的编译方式是编译工作空间下所有的功能包,如果只编译其中指定的功能包,格式如下:

catkin_make -DCATKIN_WHITELIST_PACKAGES="mypackage1"
source devel/setup.bash
catkin_make -DCATKIN_WHITELIST_PACKAGES="mypackage2"
source devel/setup.bash
catkin_make -DCATKIN_WHITELIST_PACKAGES=""

注:这一步执行命令的目录也是工作空间目录下,最后一行执行命令指恢复编译所有的包,即下次我们修改功能包内容之后依然可以重新编译我们要指定编译的包。

到此,在ROS上我们实际已经实现了相应的功能,只要运行节点(即执行相应的进程)就能实现相应的操作。例如,我们编译完了一个导航功能包,运行该导航功能包里的某个功能节点,则相应的实现了某些导航操作。
————————————————

原文链接:https://blog.csdn.net/jimson_zhu/article/details/81226978




执行

rospack list | grep hello

会显示

wxh@wxhumi:~$ rospack list | grep hello
hello /home/wxh/htest_catkin_ws/src/hello

说明功能包hello已经加入了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值