vscode配合ROS
对比非图形化界面可参考链接
https://blog.csdn.net/my_id_kt/article/details/123769451
1.基础配置
假设已经安装ros插件
假设已经使用好了工作区
在当前目录终端输入命令:
code .
使用vscode打开当前目录
2.创建tasks.json
输入ctrl+shift+b
创建一个默认任务
将以下内容替换进去
{
"version": "2.0.0",
"tasks": [
{
"label": "catkin_make:debug",
"type": "shell",
"args": [],
"command":"catkin_make",
"group": {"kind":"build","isDefault": true},
"presentation": {
"reveal": "always",
},
"problemMatcher": "$msCompile",
}
]
}
再次ctrl+shift+b就会编译当前内容了
修改c_cpp_properties.json文件
找到cppStandard
将后面内容改成c++17,之后再编写就会有代码提示了
"cppStandard": "c++17"
3.修改其它配置
src目录下选择Creat Catkin Package
- 包名自己取
- 依赖填入 roscpp rospy std_msgs
如果填错了或者想修改可以在CMakeLists.txt中修改
4.编写文件
src目录下新建个main.cpp
内容如下,作用是打印输出HELLO WORLD!
#include "ros/ros.h"
int main(int argc, char *argv[])
{
/* code */
ros::init(argc,argv,"hello world");
ROS_INFO("HELLO WORLD!");
return 0;
}
修改CMakeLists.txt
可以看到以下话:
- project(test) 对应着我们创建包时的名字
- find_package 对应着我们创建依赖时的内容
修改(加入):
add_executable(${PROJECT_NAME}_node src/main.cpp) //注意后面要修改的文件名
target_link_libraries(${PROJECT_NAME}_node
${catkin_LIBRARIES}
)
5.编译
ctrl+shift+B 编译
正常情况下是没有问题了
6.运行
vscode新建终端:
- 新建一个终端(1),执行
roscore
- 新建一个终端(2),执行
source ./devel/setup.bash
- 在终端(2)中,执行命令
rosrun **1** **2**
其中**1**是目录名, **2**是生成的可执行的名字
可以看到成功输出了