1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 保姆级教程:Linux(Ubuntu 18.04)下VSCode配置与嵌入式开发平台X2000_Halley5调试环境搭建

保姆级教程:Linux(Ubuntu 18.04)下VSCode配置与嵌入式开发平台X2000_Halley5调试环境搭建

时间:2024-01-06 15:50:21

相关推荐

保姆级教程:Linux(Ubuntu 18.04)下VSCode配置与嵌入式开发平台X2000_Halley5调试环境搭建

保姆级教程:Linux(Ubuntu 18.04)下VSCode配置与嵌入式开发平台X2000_Halley5调试环境搭建

写在前面配置VSCode的编译环境配置VSCode的gdb调试环境配置X2000_Halley5的编译环境配置X2000_Halley5的gdb调试环境

写在前面

新人第一次写博客,光是这Markdown编辑器功能介绍,看着就眼花缭乱的了,慢慢来,以后每一篇blog加入一个功能,总能都学会。😃

话不多说,开写:

操作系统:Ubuntu18.04 64bit

已经安装过VSCode,未安装任何插件

配置VSCode的编译环境

安装C/C++插件,点击最左侧快捷工具栏的【扩展】,或使用快捷键Ctrl+Shift+X,之后依次安装C/C++插件、C/C++Extension Pack插件(这时候不装,后面也会弹提示让安装)

还有这个Gdb插件,忧伤的鱼的这个。

之后按下F1键,或Ctrl+Shift+P快捷键打开指令窗口,选择C/C++:编辑配置(UI)。点击后打开UI界面配置C/C++,这里使用默认配置,直接关闭即可,之后可以在左侧的文件目录中看到在当前目录下自动生成了.vscode目录,并在该目录下自动创建了c_cpp_properties.json文件,该文件用于配置环境,包括编译头文件、编译工具等参数。

之后点击菜单栏的【终端】->【运行任务】,就会打开指令下拉列表,选择C/C++:gcc生成活动文件(有时会出现已经配置过task之后又删除的情况,这时需要点击右侧的齿轮按钮,就可以重新添加任务配置文件),就可以在左侧看到添加的tasks.json文件。

此时,已经完成标准C语言编译环境的配置,点击菜单栏【终端】→【运行生成任务】,就可以在当前目录下得到与*.c同名的可执行文件,可以在终端中执行。接下来是C语言环境下的调试设置。

配置VSCode的gdb调试环境

点击左侧快捷工具栏的运行和调试(快捷键是Ctrl+Shift+D),点击“创建launch.json文件”按钮,就会自动在编辑区创建launch.json文件。

这时点击编辑区域的右下角的添加配置按钮(如上图),然后选择“C/C++:(gdb)启动”选项,这样就向其中添加了gdb调试信息。

这里需要修改一下Configuration选项里的program这项的内容,可以参考tasks.json里编译器参数的最后一行的内容,将其赋值为:“${fileDirname}/${fileBasenameNoExtension}

然后再点击左侧运行和调试按钮,就可以看到已经有可用的调试命令了,如下图所示,点击即可开始调试。

配置X2000_Halley5的编译环境

接下来是修改为适应X2000调试的方法。首先是修改编译器,按F1选择“C/C++编辑配置(UI)”,之后修改编译器路径,从原来的/usr/bin/gcc修改为手册中写的(建议写绝对目录):

******/project_workspace/buildroot/buildroot/output/host/usr/bin/mips-linux-gnu-gcc

(这里在输入完毕后,鼠标点击其他地方,可以检查输入的是否正确,如果错误,会提示找不到编译器)

在下面的“包含路径”中加入X2000库的头文件目录:

******/project_workspace/buildroot/buildroot/output/staging/usr/include/

然后修改tasks.json文件。修改“tasks”配置项里的command配置项,将其修改为上面编译器的绝对地址:

******/project_workspace/buildroot/buildroot/output/host/usr/bin/mips-linux-gnu-gcc

并按照手册加入编译选项,最后配置结果如下所示:

{"version": "2.0.0","tasks": [{"type": "cppbuild","label": "C/C++: gcc 生成活动文件","command": "******/project_workspace/buildroot/buildroot/output/host/usr/bin/mips-linux-gnu-gcc","args": ["-fdiagnostics-color=always","-g",// 这就是是能gdb调试功能"${file}","-lhardware2","-o","${fileDirname}/${fileBasenameNoExtension}"],"options": {"cwd": "${fileDirname}"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "编译器: /usr/bin/gcc"}]}

至此,基于X2000编译器的修改已经完毕,可以执行菜单栏【终端】->【运行生成任务】命令来进行编译生成文件。

配置X2000_Halley5的gdb调试环境

接下来来实现gdb调试的配置launch.json文件,内容如下:

{// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information, visit: Debugging in Visual Studio Code"version": "0.2.0","configurations": [{"name": "X2000调试", //配置名称,显示在配置下拉菜单中"type": "cppdbg", //配置类型"request": "launch", //请求配置类型,可以是启动或者是附加"program": "${fileDirname}/${fileBasenameNoExtension}", // linux上程序可执行文件的完整路径 "args": [], //传递给程序的命令行参数"stopAtEntry": false,//可选参数,如果为true,调试程序应该在入口(main)处停止"cwd": "${workspaceFolder}", //目标的工作目录"environment": [], //表示要预设的环境变量"externalConsole": false,//如果为true,则为调试对象启动控制台"MIMode": "gdb",//要连接到的控制台启动程序"setupCommands": [ //为了安装基础调试程序而执行的一个或多个GDB/LLDB命令{"description": "为 gdb 启用整齐打印","text": "-enable-pretty-printing","ignoreFailures": true}],"miDebuggerPath": "******/project_workspace/buildroot/buildroot/output/host/usr/bin/mips-linux-gnu-gdb", // 与编译器对应的gdb工具绝对路径// gdb程序路径,作为与目标板gdbserver通信的gdb client运行于linux服务器上"miDebuggerServerAddress": "192.168.1.33:9090" //目标板上gdbserver的IP地址(也就是目标板的地址)和端口号}

就此配置完毕。这样,每次编译完毕后,将程序通过adb,push到目标板上,这里目标板的gdbserver位于开发板的/usr/bin目录下,将待调试文件放在/tmp/sdcard/mmcblk0p1目录下,在开发板上执行下面的命令:

# /usr/bin/gdbserver :9090 /tmp/sdcard/mmcblk0p1/test

即可进入等待模式,等待上位机开始调试,上位机点击下图的三角键运行调试,记得先打好短点就可以了。

收工撒花✿✿ヽ(°▽°)ノ✿

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。