要搭建嵌入式#%#$#%@%@%$#%$#%#%#$%@_e206a54e97690c++e50cc872dd70ee896开发的vscode c环境,首先安装vscode及c/c++扩展以获得基本编译调试能力;2. 安装适用于目标架构的交叉编译工具链,如树莓派使用arm-linux-gnueabihf-gcc;3. 配置tasks.json文件指定交叉编译器路径和编译参数,实现代码构建;4. 配置launch.json文件设置gdb远程调试,包括midebuggerpath和目标设备ip端口;5. 在嵌入式设备上启动gdbserver并监听指定端口,准备调试连接;6. 解决权限问题可通过chmod修改设备文件权限、sudo运行gdbserver或配置udev规则;7. 实现代码自动补全和语法检查需正确配置c_cpp_properties.json中的includepath和compilerpath,或安装clangd扩展提升智能感知;8. 使用remote development扩展可实现远程开发,通过remote-ssh连接设备并在远程安装vscode server;9. 用makefile管理复杂项目,编写编译规则并在tasks.json中调用make命令;10. 查看串口输出可安装serial monitor扩展并配置正确串口号和波特率。完整配置后即可高效进行嵌入式linux开发。

直接在VSCode里搞嵌入式Linux开发,听起来就挺酷的,对吧? 其实也没那么神秘,关键是把环境搭好。 这篇文章就来说说怎么完整搭建C环境,让你在VSCode里也能飞起来。
搭建嵌入式Linux开发的VSCode C环境。
其实选择VSCode,很大程度上是因为它的轻量级和强大的插件生态。 你可以根据自己的需求安装各种插件,比如C/C++ 插件、远程开发插件等等,让你的开发效率嗖嗖地往上涨。 而且,VSCode的界面也比较友好,用起来很舒服。 当然,也有人喜欢用其他的IDE,比如Eclipse,但我觉得VSCode更适合我这种喜欢折腾的人。
解决方案:
安装VSCode和C/C++ 扩展: 这个不用多说,官网下载安装,然后在扩展商店搜索C/C++,安装。 装完之后,VSCode基本上就有了编译和调试C/C++代码的能力。
安装交叉编译工具链: 这是关键。 因为嵌入式Linux运行在不同的架构上(比如ARM),所以我们需要一个交叉编译工具链,在PC上编译出能在嵌入式设备上运行的代码。 这个工具链怎么安装,取决于你的嵌入式平台。 比如,如果是树莓派,你可以用
apt-get install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf
arm-linux-gnueabihf
配置VSCode的tasks.json
Ctrl+Shift+P
Tasks: Configure Task
Create tasks.json from template
Others
tasks.json
command
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "build",
"command": "/usr/bin/arm-linux-gnueabihf-gcc", // 这里改成你的交叉编译器路径
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}launch.json
Ctrl+Shift+P
Debug: Open launch.json
launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "/usr/bin/arm-linux-gnueabihf-gdb", // 这里改成你的GDB路径
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"targetArchitecture": "arm",
"miDebuggerServerAddress": "192.168.1.100:1234" // 这里改成你的目标设备的IP地址和端口号
}
]
}gdbserver 192.168.1.100:1234 your_program
192.168.1.100
1234
your_program
权限问题是嵌入式开发中经常遇到的。 比如,你可能没有权限访问某些设备文件,或者没有权限调试某些程序。 解决这个问题,通常需要修改文件权限,或者以root身份运行GDB Server。 但要注意,以root身份运行程序可能会带来安全风险,所以要谨慎操作。
解决方案:
修改文件权限: 使用
chmod
chmod 777 /dev/ttyUSB0
/dev/ttyUSB0
以root身份运行GDB Server: 使用
sudo gdbserver 192.168.1.100:1234 your_program
配置udev规则: udev是一个Linux设备管理器,可以根据设备属性自动配置设备文件。 你可以通过配置udev规则,让特定的用户自动拥有特定设备的访问权限。
代码自动补全和语法检查是提高开发效率的利器。 VSCode的C/C++ 扩展自带了这些功能,但需要正确配置。 确保你的
c_cpp_properties.json
解决方案:
c_cpp_properties.json
Ctrl+Shift+P
C/C++: Edit Configurations (JSON)
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/usr/include",
"/usr/include/arm-linux-gnueabihf" // 这里添加你的头文件路径
],
"defines": [],
"compilerPath": "/usr/bin/arm-linux-gnueabihf-gcc", // 这里改成你的交叉编译器路径
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "linux-gcc-arm"
}
],
"version": 4
}很多时候,我们的代码需要在远程的嵌入式设备上编译和运行。 VSCode的Remote Development 扩展可以让我们直接在远程设备上开发,就像在本地一样。
解决方案:
安装Remote Development 扩展: 在VSCode的扩展商店搜索Remote Development,安装即可。 这个扩展包含三个子扩展:Remote - SSH、Remote - Containers 和 Remote - WSL。 根据你的需求选择安装。
配置SSH连接: 使用Remote - SSH 扩展,可以通过SSH连接到远程设备。 点击VSCode左下角的绿色按钮,选择
Remote-SSH: Connect to Host...
在远程设备上安装VSCode Server: 第一次连接到远程设备时,VSCode会自动在远程设备上安装VSCode Server。 这个Server负责在远程设备上运行代码,并将结果返回给本地的VSCode。
Makefile是一个自动化构建工具,可以简化编译过程。 对于复杂的嵌入式Linux项目,使用Makefile可以大大提高开发效率。
解决方案:
CC = arm-linux-gnueabihf-gcc
CFLAGS = -g -Wall
TARGET = my_program
SOURCES = main.c
all: $(TARGET)
$(TARGET): $(SOURCES)
$(CC) $(CFLAGS) -o $(TARGET) $(SOURCES)
clean:
rm -f $(TARGET)tasks.json
tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "make",
"command": "make",
"args": [],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}嵌入式设备的串口输出对于调试非常重要。 VSCode可以通过安装串口插件来查看串口输出。
解决方案:
安装Serial Monitor 扩展: 在VSCode的扩展商店搜索Serial Monitor,安装即可。
配置Serial Monitor: 配置Serial Monitor的串口号、波特率等参数。 点击VSCode底部的Serial Monitor图标,可以打开串口监视器。
配置嵌入式Linux开发环境确实需要一些耐心,但一旦配置好,开发效率就会大大提高。 希望这篇文章能帮助你顺利搭建VSCode的嵌入式Linux开发环境,开始你的嵌入式之旅!
以上就是VSCode配置嵌入式Linux开发 完整VSCode搭建C环境教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号