VSCode斷點調試CMake工程項目的實現步驟
斷點調試在【排查代碼錯誤】時,發揮著巨大的作用!本文旨在使用VS Code實現對CMake工程項目的【斷點調試】。
初始狀態
假設我們已經有一個CMake工程項目(比如從github上直接下載並做瞭一些修改),且我們可以保證能夠編譯、運行(換言之,能保證無語法錯誤,但不能保證無邏輯錯誤)。
mkdir build && cd build cmake .. make -j2 ./run_test
以上命令在終端中輸入、被(一氣呵成從頭至尾地)執行。
此時,我們的目標是,在VS Code中實現設置斷點,並在運行時停在此處!
兩步走!
第一步: 修改CMakeLists.txt中相應語句為Debug模式。
【例】原語句可能在Release模式,如下:
set(CMAKE_BUILD_TYPE "Debug") set(CMAKE_CXX_FLAGS_RELEASE "-O3 -Wall -g")
則,保證修改後為:
set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_FLAGS_DEBUG "-O0 -Wall -g -ggdb")
該步驟亦應通過在終端輸入編譯、運行指令,檢驗並確保無誤。
第二步: 在VS Code中配置一個launch.json
文件
先上一張結果圖,以清晰闡述該過程!
從圖中可以看出,分成瞭三小步:
a. 配置lauch.json
,依次點擊黃色框中的“小蟲子”和“齒輪”,將打開一個lauch.json
的模板。而我們隻需要修改其中的一行命令:
"program": "${workspaceFolder}/build/estimate_depth" // 是可執行文件所在的位置
ps. 整個launch.json
文件的圖片放在瞭文末。
b. 點擊如圖位置的build
,編譯CMake工程項目。
c. 打好斷點,運行即可。如圖程序停在瞭斷點位置(ps.單步執行瞭一次,故停在瞭斷點後一行)。
參考博文:利用VScode和cmake編譯構建C++工程代碼
到此這篇關於VSCode斷點調試CMake工程項目的實現步驟的文章就介紹到這瞭,更多相關VSCode斷點調試CMake內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 詳解Ubuntu18.04配置VSCode+CMake的C++開發環境
- VsCode配置C++/Cmake的步驟詳解
- 用VScode編寫C++大型項目的方法步驟
- vscode和cmake編譯多個C++文件的實現方法
- 在VScode中配置ROS環境的詳細過程