ROS环境下编译运行c++文件

一、要建立一个ROS工程,首先要了解它的组织架构,了解各个文件的功能和作用,
从根本上熟悉ROS项目的组织形式,了解各个文件的功能和作用,才能正确的进行开发和编程。
ROS环境下编译运行c++文件_第1张图片
详细组织形式
ROS环境下编译运行c++文件_第2张图片
现在做个简单的例子
二、示例代码:
#include “ros/ros.h”
int main(){
ROS_WARN(“wrong”);
}

1、新建test_c_ws工程,
mkdir -p test_c_ws/src
cd test_c_ws/src
在它下面新建test1功能包
直接使用catkin_create_pkg指令(可以自动创建package.xml和CMakeLists.txt文件)
格式为:catkin_create_pkg 包名 ros库1 ros库2…
catkin_create_pkg test1 roscpp
cd test1/src/
在test1/src目录下新建一个wrong.cpp,敲下上述示例代码。
#include “ros/ros.h”
int main(){
ROS_WARN(“wrong”);
}

2、在test1目录下修改package.xml和CMakeLists.txt文件
package.xml不用修改,主要是修改CMakeLists.txt
找到下面这部分,去掉include前的注释
ROS环境下编译运行c++文件_第3张图片并在下面添加

add_executable(wrong src/wrong.cpp)
target_link_libraries(wrong ${catkin_LIBRARIES})

三、工程的编译与程序运行
1.编译工程
在test_c_ws工程目录下,编译工程
sudo chmod 777 src -R 一键给文件读写、执行权限
catkin_make 编译

2.配置工作空间,刷新环境
source devel/setup.bash
也可以直接加到~/.bashrc文件末尾

3.运行程序(作为节点node单独启动)
rosrun test1 wrong
在这里插入图片描述
正常编译的node,都会在对应的工程目录的devel/lib/对应package/下生成node文件
在这里插入图片描述可以直接
./wrong
运行

你可能感兴趣的:(c/c++,c++)