ROS1+Vscode

http://www.autolabor.com.cn/book/ROSTutorials/

在Vscode中安装好下述插件。

1.新建文件夹(必须要有src)

复制代码
mkdir -p ros_test/src
cd ros_test
catkin_make

2.在文件夹ros_test下打开vscode

复制代码
code .

注意:这里一定要在src、devel、build同级目录下打开vscode.

  1. 创建功能包

这里先创建自定义包的名字ros_sample,然后按entet,再次输入具体的功能包,这里是roscpp、rospy、std_msgs。

创建完成后会生成以下内容:

按ctrl+shift+b,选择catkin_make:Catkin Build,查看是否编译通过。

编译通过。

4.按命令ctrl + shift + p

复制代码
​​​​​​​ctrl + shfit + p

输入Task,选择任务:配置任务选项;

选择catkin_make: Catkin Build;

出现task.json文件:

作以下修改:

复制代码
{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "shell",
			"command":"catkin_make",
			"args": [
				"--directory",
				"/home/hls/workspace/code/ros_test",
				"-DCMAKE_BUILD_TYPE=RelWithDebInfo"
			],
			"problemMatcher": [
				"$catkin-gcc"
			],
			"group": {"kind":"build","isDefault": true},
			"presentation": {
				"echo": true,
				"reveal": "always",
				"focus": false,
				"panel": "shared",
				"showReuseMessage": true,
				"clear": false
			},
			"label": "catkin_make: debug"
		}
	]
}

这里注意"args":\[\]中要加入当前工作空间的文件夹路径,该路径下包括文件:devel、build、src。

在ros_test/src/ros_sample/src下新建文件ros_test.cpp,并写入以下代码:

复制代码
/*
    控制台输出 HelloVSCode !!!

*/
#include "ros/ros.h"

int main(int argc, char *argv[])
{
    setlocale(LC_ALL,"");
    //执行节点初始化
    ros::init(argc,argv,"HelloVSCode");

    //输出日志
    ROS_INFO("Hello VSCode!!!哈哈哈哈哈哈哈哈哈哈");
    return 0;
}

CmakeLists.txt中加入一下2两行:

复制代码
add_executable(节点名称
  src/C++源文件名.cpp
)
target_link_libraries(节点名称
  ${catkin_LIBRARIES}
)

在这里对应如下:

复制代码
add_executable(ros_test src/ros_test.cpp)

target_link_libraries(ros_test ${catkin_LIBRARIES})

ctrl+shift+B编译如下:

在终端输入:

这里ros_sample是自定义包名,ros_test是对应的节点。

相关推荐
时间的情敌4 小时前
几款常用的编程AI工具
vscode
山峰哥5 小时前
造价算量系统SQL优化,慢查询从9秒压到35毫秒‌
大数据·数据库·sql·编辑器·深度优先
捷瑞电子工坊6 小时前
VSCode的配置和一些报错问题
vscode·ubuntu·c/c++·编译报错·开发环境配置·初学者教程·json配置
孙小l懒_keep_update16 小时前
【VSCODE中的Codex 打不开(页面空白,一直 Loading)】
vscode
-To be number.wan19 小时前
编译原理第三章:编译器是怎么“认字“的?——词法分析全解析
学习·编辑器
gzkuijing1 天前
MDI1PRD23B7‑EQ|Novanta IMS一体化RS-485/422步进电机参数、选型要点与典型应用
人工智能·机器学习·编辑器
面包狗AI4S1 天前
Codex/ChatGPT 反复 Reconnecting(正在重新连接) 5/5 的最简修复方法
人工智能·vscode·chatgpt
与自己和解7411 天前
使用ssh实现 VScode 直连 ubuntu
vscode·ubuntu·ssh
捷瑞电子工坊1 天前
Ubuntu 下安装 VSCode 和 gcc 的简单步骤
vscode·ubuntu·代码编辑器·安装教程·gcc·deb·snap
sunoo-2291 天前
【网络编程 + 数据库】select 与 epoll 核心区别详解 + SQLite 入门到 C 接口全攻略
linux·网络·数据库·vscode·学习·sqlite