主要包含:
- C/C++ Microsoft
- C++ Intellisense austin
- CMake Tools Microsoft
- Python Microsoft
- ROS Microsoft
3 VSCode运行ROS2环境步骤
3.1 安装编译依赖项
- 创建虚拟环境,原理可看Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)
conda create -n ros2 python=3.10
- 切换到虚拟环境
conda activate ros2
- 安装
colcon
构建系统
pip install -U colcon-common-extensions
- 安装其他依赖项
pip install catkin_pkg numpy lark setuptools==58.2.0
conda install -c conda-forge gcc=12.1.0
3.2 创建工作空间和源码空间
mkdir -p xxx_ws/src
cd xxx_ws
colcon build
3.3 启动VSCode与配置
cd xxx_ws
vscode .
新建.vscode
目录,添加配置文件tasks.json
,内容替换为:
{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"label": "colcon:build", //代表提示的描述性信息
"type": "shell", //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
"command": "colcon build",//这个是我们需要运行的命令
"args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN\_WHITELIST\_PACKAGES=“pac1;pac2”
"group": {"kind":"build","isDefault":true},
"presentation": {
"reveal": "always"//可选always或者silence,代表是否输出信息
},
"problemMatcher": "$msCompile"
}
]
}
即可通过快捷键ctrl + shift + B
调用编译
编译后.vscode文件夹中会产生
c_cpp_properties.json
: 与C/C++运行头文件、库文件配置有关settings.json
: 与Python解释器有关
将c_cpp_properties.json
内容替换为:
{
"configurations": [
{
"browse": {
"databaseFilename": "",
"limitSymbolsToIncludedHeaders": true
},
"includePath": [
"/opt/ros/humble/include/\*\*",
"/usr/include/\*\*",
"/usr/lib/\*\*",
"/usr/local/include",
"${workspaceFolder}/\*\*"
],
"name": "ROS2",
"defines": [],
"compilerPath": "/usr/bin/g++",
"cStandard": "gnu17",
"cppStandard": "c++17",
"intelliSenseMode": "linux-gcc-x64"
}
],
"version": 4
}
4 测试工程环境
4.1 C++版本
测试代码(暂时不用管什么意思)
#include "rclcpp/rclcpp.hpp"
class HelloWorldNode : public rclcpp::Node
{
public:
HelloWorldNode() : Node("node\_helloworld")
{
while(rclcpp::ok())
{
RCLCPP\_INFO(get\_logger(), "Hello World");
sleep(1);
}
}
};
int main(int argc, char \* argv[])
{
rclcpp::init(argc, argv);
rclcpp::spin(std::make\_shared<HelloWorldNode>());
rclcpp::shutdown();
return 0;
}
配置CMakeLists.txt
和package.xml
后ctrl + shift + B
调用编译与测试
4.2 Python版本
测试代码(暂时不用管什么意思)
#!/usr/bin/env python3
# -\*- coding: utf-8 -\*-
import rclpy
from rclpy.node import Node
import time
def main(args=None):
rclpy.init(args=args)
node = Node("node\_helloworld")
while rclpy.ok():
node.get_logger().info("Hello World")
time.sleep(0.5)
node.destroy_node()
rclpy.shutdown()
配置setup.cfg
、setup.py
和package.xml
后ctrl + shift + B
调用编译与测试
至此完成VSCode搭建ROS2工程环境
🔥 更多精彩专栏:
👇源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系👇
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
mg-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
![img](https://img-blog.csdnimg.cn/img_convert/c840c9a2e91a22b7904375d8e4980803.jpeg)