一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第18天,点击查看活动详情。
1 Ubuntu下安装VSCode
1.1 基本安装
步骤如下:
- 通过国内源下载VSCode
- 将压缩包解压并移动到
usr/local
目录sudo mv VSCode-linux-x64 /usr/local/
- 获取运行权限:
sudo chmod +x /usr/local/VSCode-linux-x64/code
- 安装VSCode,注意此处只能用普通用户权限
/usr/local/VSCode-linux-x64/code
- 创建软链接:
之后在任意位置可通过终端输入sudo ln -s /usr/local/VSCode-linux-x64/code /usr/local/bin/vscode
vscode
启动软件
1.2 将VSCode添加到侧边栏
进入application
文件夹并新建桌面文件
cd /usr/share/applications
sudo vim vscode.desktop
根据应用取名***.desktop
,该方法适用于其他应用。
在该桌面文件中添加
[Desktop Entry]
Encoding=UTF-8
Name=VSCode
Comment=VSCode
Exec=/usr/local/VSCode-linux-x64/code
Icon=/usr/local/VSCode-linux-x64/resources/app/resources/linux/code.png
Terminal=false
StartupNotify=true
Type=Application
Categories=Application;Development;
对于其他应用,主要修改四个项目
- Name
- Comment
- Exec
- Icon
前两个随便描述,Exec
为应用程序可执行文件的路径;Icon
为应用程序图标的路径。
2 VSCode集成相关插件
主要包含:
-
C/C++ ==Microsoft==
-
C++ Intellisense ==austin==
-
CMake Tools ==Microsoft==
-
Python ==Microsoft==
-
ROS ==Microsoft==
3 VSCode运行ROS环境步骤
3.1 创建工作空间和源码空间
mkdir -p xxx_ws/src
cd xxx_ws
catkin_make
3.2 启动VSCode与配置
cd xxx_ws
vscode .
快捷键ctrl + shift + B
调用编译,选择catkin_make:build
为了防止每次都要选择,可以点击catkin_make:build
右侧的齿轮配置默认启动方式,配置文件为tasks.json
,内容替换为:
{
// 有关 tasks.json 格式的文档,请参见
// https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"label": "catkin_make:debug", //代表提示的描述性信息
"type": "shell", //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
"command": "catkin_make",//这个是我们需要运行的命令
"args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
"group": {"kind":"build","isDefault":true},
"presentation": {
"reveal": "always"//可选always或者silence,代表是否输出信息
},
"problemMatcher": "$msCompile"
}
]
}
编译后.vscode文件夹中会产生
c_cpp_properties.json
: 与C/C++运行头文件、库文件配置有关settings.json
: 与Python解释器有关
将c_cpp_properties.json
内容替换为:
{
"configurations": [
{
"browse": {
"databaseFilename": "",
"limitSymbolsToIncludedHeaders": true
},
"includePath": [
"/opt/ros/kinetic/include/**",
"/usr/include/**",
"/usr/lib/**",
"/usr/local/include",
"${workspaceFolder}/**"
],
"name": "ROS",
"defines": [],
"compilerPath": "/usr/bin/g++",
"cStandard": "gnu17",
"cppStandard": "c++17",
"intelliSenseMode": "linux-gcc-x64"
}
],
"version": 4
}
4 创建功能包与测试
在src
文件夹右键Creat Catkin Package
,并依次填写包名称和包依赖即可,本实验中添加roscpp
与rospy
。
4.1 C++版本
测试代码(暂时不用管什么意思)
#include "ros/ros.h"
int main(int argc, char *argv[])
{
ros::init(argc, argv, "helloWorld");
ROS_INFO("hello world");
return 0;
}
配置CMakeLists.txt
主要的几个位置
# 依赖
find_package(catkin REQUIRED
roscpp
rospy
)
# 头文件
include_directories(
include
${catkin_INCLUDE_DIRS}
)
# 可执行文件
add_executable(helloWorld helloworld.cpp)
# 链接库
target_link_libraries(helloWorld
${catkin_LIBRARIES}
)
ctrl + shift + B
调用编译与测试
4.2 Python版本
测试代码
#! /usr/bin/env python
import rospy
if __name__ == "__main__":
rospy.init_node("helloWorld_p")
rospy.loginfo("Hello World Python")
配置CMakeLists.txt
catkin_install_python(PROGRAMS
scripts/helloworld.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
ctrl + shift + B
调用编译与测试
更多内容欢迎关注我的AI频道"AI技术社"