![](/img/trans.png)
[英]How to define the task.json to compile C/C++ code in vscode by using the cl.exe on windows?
[英]Vscode C++ debugging code built with cl.exe and / link.exe - debugger doesn't attach
因此,我使用gulp.js調用cl.exe和link.exe為我的c ++游戲構建了構建系統,以構建游戲。 我正在生成一個輸出pdb文件的構建,很確定我已打開所有調試符號。
游戲構建良好,但我想將其連接到vscode調試器。
現在,我在網上看到了絕大多數設置,其中有人為調試器設置了launch.json,他們正在使用gdb。 我不介意使用gdb,實際上只是在乎它是否有效。 但是我正在用cl.exe和link.exe生成二進制文件。 無論如何,我的啟動器會很好地啟動可執行文件,但是就像調試器沒有連接一樣。 例如,沒有斷點。
以前我是與mingw一起建造的,一切都很好。 我想改用cl.exe和link.exe,但是我懷疑這是調試器未附加的原因。
GDB不是vscode調試器 ; 如果您還使用編譯器和鏈接器,則可以在vscode中指定它是一個調試器,該編譯器和鏈接器會以GDB識別的形式生成包含調試信息的二進制文件。
Microsoft cl
和link
並不是這樣的編譯器和鏈接器。 GDB是GNU調試器 ,並且受GNU GCC編譯器( gcc
, g++
, gfortran
, gnat
, gccgo
和GNU binutils鏈接器)支持 。 Microsoft .pdb
調試數據庫對GDB沒有任何意義:它僅可由MS Visual Studio調試器使用。
如果使用cl
選項/Z7
編譯,則PE/COFF
調試信息將嵌入在目標文件中,並且如果使用選項/DEBUG:NONE
鏈接,則鏈接器將不會生成.pdb
。 然后,您可能會發現GDB能夠令人滿意地調試可執行文件,但是我不能為此提供擔保。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.