ROS学习笔记(3)-----创建工作区,运行hello程序
ROS编译hello程序
- 首先创建一个工作空间——文件夹
mkdir -p ~/catkin_ws/src
catkin_ws为文件名,也可以自定义名称。
2. 对该文件下的scr初始化。
切换到scr文件夹下:
cd ~/xialan/src/
对其初始化:
catkin_init_workspace
3. 编译工作区
编译你的工作区中的所有包,将会完成一些配置步骤(尤其是你第一 次运行此命令时),并且在你的工作区中创建 devel 和 build 两个 子目录。这两个新目录用于存放和编译相关的文件,例如自动生 成的编译脚本、目标代码和可执行文件。
退回根目录:
cd ..
编译工作区:
catkin_make
4. 设置环境变量
使 ROS 能够 找到你创建的功能包和新生成的可执行文件
source devel/setup.bash
5. 在工作空间的src里面,然后,在里面使用catkin_create_pkg来创建一个package包
catkin_create_pkg hello std_msgs rospy roscpp
6. 在名为hello的package包下的src文件夹下编写一个hello.cpp文件
文件内容:
#include <ros/ros.h>
int main(int argc, char **argv)
{
ros::init(argc,argv,"hello");
ros::NodeHandle n;
ROS_INFO("Hello ROS!");
ros::spinOnce();
}
7.修改CMakeList.txt文件:
在文件的结尾处加上:
add_executable(hello ~/xialan/src/hello/src/hello.cpp)
target_link_libraries(hello ${catkin_LIBRARIES})
8. 编译程序
在工作区中编译程序
catkin_make
- 联系hello.cpp和CMakeList.txt文件关系
在新的终端输入指令打开.bashrc文件。
gedit ~/.bashrc
在文件的最后加上
source /home/robin/xialan/devel/setup.bash
- 运行节点
终端输入
roscore
- 运行hello
新的终端
rosrun hello hello