windows下 VScode+CMake+Linux远程调试
本文在這個(gè)基礎(chǔ)上(跳過makefile):在Windows上使用VSCode遠(yuǎn)程鏈接到Linux上開發(fā)并調(diào)試C++程序_yizhiniu_xuyw的專欄-CSDN博客d?開發(fā)環(huán)境配置成功,記個(gè)流水賬Linux安裝相應(yīng)工具apt install -y gcc make gdb請(qǐng)配置好Linux端的SSH功能給VSCode安裝Remote Development擴(kuò)展安裝后可以看到一個(gè)新圖標(biāo),點(diǎn)擊后選中SSH Targets添加鏈接方式編輯這個(gè)文件,如果沒有就新建:C:/Users/用戶名/.ssh/config以下內(nèi)容添加到末尾后編輯下:Host 設(shè)備名稱(不影響連接) HostName Linux的地址(域名或iphttps://blog.csdn.net/yizhiniu_xuyw/article/details/119513666
.vscode下C/C++配置
1.快捷鍵(Ctrl+Shift+p),選擇 C/C++:編輯配置(UI),進(jìn)行設(shè)置
這一步會(huì)在.vscode下生成c_cpp_properties.json
.vscode下cmake編譯配置
1.編寫好程序的Makefile文件(這里就不細(xì)說了)
2.快捷鍵(Ctrl+Shift+p),輸入task,選擇 配置任務(wù)
3.隨便選擇一項(xiàng),我這里選擇的g++
4.以上會(huì)在.vscode文件夾下,生成一個(gè)tasks.json的配置文件,和默認(rèn)配置
我修改好的 tasks.json 配置文件 (cmake)
{
? ? // See https://go.microsoft.com/fwlink/?LinkId=733558
? ? // for the documentation about the tasks.json format
? ? "version": "2.0.0",
? ? "tasks": [
? ? ? ? {
? ? ? ? ? ? "label": "CMakeBuild",
? ? ? ? ? ? "type": "shell",
? ? ? ? ? ? "command": "cmake ..",
? ? ? ? ? ? "args": [],
? ? ? ? ? ? "options": {
? ? ? ? ? ? ? ? "cwd": "${workspaceFolder}/build"?
? ? ? ? ? ? }
? ? ? ? },
? ? ? ? {
? ? ? ? ? ? "label": "build",
? ? ? ? ? ? "type": "shell",
? ? ? ? ? ? "dependsOn": ["CMakeBuild"],
? ? ? ? ? ? "command": "make clean; make",
? ? ? ? ? ? "options": {
? ? ? ? ? ? ? ? "cwd": "${workspaceFolder}/build"?
? ? ? ? ? ? }
? ? ? ? }
? ? ]
}
或者
{
? ? "version": "2.0.0",
? ? "tasks": [
? ? ? ? {
? ? ? ? ? ? "label": "cmake",
? ? ? ? ? ? "type": "shell",
? ? ? ? ? ? "command": "cmake",
? ? ? ? ? ? "args": ["../"],
? ? ? ? ? ? "options": {
? ? ? ? ? ? ? ? "cwd": "${workspaceFolder}/build"
? ? ? ? ? ? }
? ? ? ? },
? ? ? ? {
? ? ? ? ? ? "label": "make",
? ? ? ? ? ? "type": "shell",
? ? ? ? ? ? "command": "make",
? ? ? ? ? ? "args": ["-j20"], ?//這里cmake -j20 表示 使用20核編譯代碼,可選項(xiàng)
? ? ? ? ? ? "dependsOn": ["cmake"],
? ? ? ? ? ? "options": {
? ? ? ? ? ? ? ? "cwd": "${workspaceFolder}/build"
? ? ? ? ? ? }
? ? ? ? },
? ? ? ? {
? ? ? ? ? ? "label": "build",
? ? ? ? ? ? "dependsOn": ["cmake","make"]
? ? ? ? }
? ? ]
}
?
.vscode下cmake調(diào)試配置
1.點(diǎn)擊運(yùn)行,選擇添加配置
2.選擇C/C++: (gdb)?啟動(dòng),會(huì)生成 launch.json 配置文件,和配置模版,修改launch.json:
{
? ? "version": "0.2.0",
? ? "configurations": [
? ? ? ? {
? ? ? ? ? ? "name": "(gdb) Launch", //配置名稱,會(huì)在啟動(dòng)配置的下拉菜單中顯示
? ? ? ? ? ? "type": "cppdbg", //配置類型,只能為cppdbg
? ? ? ? ? ? "request": "launch", //請(qǐng)求類型,可以為launch或attach
? ? ? ? ? ? "program": "${workspaceFolder}/build/可執(zhí)行程序文件名", //將要調(diào)試的程序的路徑【執(zhí)行程序名不要遺漏了】
? ? ? ? ? ? "args": [], //調(diào)試時(shí)傳遞給程序的命令行參數(shù)
? ? ? ? ? ? "stopAtEntry": false, //設(shè)為true程序會(huì)暫停在入口處
? ? ? ? ? ? "cwd": "${workspaceFolder}/build", //調(diào)試程序時(shí)的工作目錄
? ? ? ? ? ? "environment": [], //環(huán)境變量
? ? ? ? ? ? "externalConsole": false, //調(diào)試時(shí)是否顯示控制臺(tái)窗口
? ? ? ? ? ? "MIMode": "gdb", //指定連接的調(diào)試器,可以為gdb或lldb
? ? ? ? ? ? "miDebuggerPath": "/usr/bin/gdb", //gdb路徑
? ? ? ? ? ? "setupCommands": [
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? "description": "Enable pretty-printing for gdb",
? ? ? ? ? ? ? ? ? ? "text": "-enable-pretty-printing",
? ? ? ? ? ? ? ? ? ? "ignoreFailures": true
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ]
? ? ? ? ? ? ,"preLaunchTask": "build" //調(diào)試開始前執(zhí)行的任務(wù),一般為編譯過程,會(huì)調(diào)用tasks.json里面的任務(wù),調(diào)試過程中沒有代碼改動(dòng)的話可以注釋掉
? ? ? ? ? ? //,"preLaunchTask": "build" //調(diào)試過程中沒有代碼改動(dòng)的話可以注釋掉,像這樣
? ? ? ? ? ??
? ? ? ? }
? ? ]
}
參考:Windows使用VSCode遠(yuǎn)程Linux(ConteOS)開發(fā)/調(diào)試C/C++(超詳細(xì))_zy_workjob的專欄-CSDN博客
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的windows下 VScode+CMake+Linux远程调试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CMake基础 第8节 包含第三方库
- 下一篇: 查看linux显示文件大小,Linux下