您好,登錄后才能下訂單哦!
怎么在VSCode中斷點調試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.單步執行了一次,故停在了斷點后一行)。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。