Wie debugge ich vscode in einem Schritt?
vscode-Einzelschritt-Debugging
VScode-Konfiguration
0. Tastenkombinationen
Ctrl + ` 打开默认终端; Ctrl + Shift + ` 新建新的终端; Ctrl + Shift + Y 打开调试控制台,然后再自行切换终端选项; ps: ` 在键盘数字1的左边。
Verwandte Empfehlungen: Vscode-Einführungs-Tutorial
1. Installieren Sie clang
sudo apt-get install clang
2. VScodeDebug
Plug-in-Referenzlink Aber die Konfiguration großer Projekte ist immer noch relativ kompliziert. Hier ist eine Aufzeichnung des allgemeinen CPP-Debuggings der vscode-Konfiguration:
1. Die allgemeine Idee besteht darin, zunächst die herkömmliche Methode zur Durchführung des mkdir-Builds zu befolgen && cd build && cmake.. && make (Dieser Schritt kann im Terminal von vscode oder im Systemterminal ausgeführt werden, es spielt keine Rolle. Um die Schnittstelle zu speichern, ist es jedoch besser, ihn in vscode abzuschließen) generieren Erstellen Sie die ausführbare Datei und verwenden Sie dann vscode, um einen einzelnen Schritt auszuführen.
2. Konfigurieren Sie die Startdatei: Klicken Sie in der linken Seitenleiste auf das Debug-Symbol (Strg+Umschalt+D), dann oben auf das Zahnradsymbol „Konfigurieren“ und dann auf „Standard konfigurieren“, um die Datei „launch.json“ automatisch zu generieren. Geben Sie die Startdateischnittstelle ein und Sie können sehen, dass der Pfad .vscode/launch.json/Launch Targets/(gbd)Launch ist.
3 Ändern Sie die Startdatei:
{ "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/app/testMonoBA", //此路径更改为最终生成的可执行文件路径以及可执行文件名称 "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole":false,//将此处的true改为false,不然他会调用系统的终端进行现实 "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], } ] }
4. Ändern Sie die Datei CMakeLists.txt:
cmake_minimum_required(VERSION 2.8) project(slam_demo) set(DEFAULT_BUILD_TYPE "Debug") #修改处,讲release改为debug,也可以直接删除 if (NOT CMAKE_BUILD_TYPE) message(STATUS "Setting build type to '${DEFAULT_BUILD_TYPE}' as none was specified.") set(CMAKE_BUILD_TYPE "${DEFAULT_BUILD_TYPE}" CACHE STRING "Choose the type of build." FORCE) # Set the possible values of build type for cmake-gui set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo") endif () set(CMAKE_CXX_FLAGS "-std=c++11") FIND_PACKAGE( OpenMP REQUIRED) if(OPENMP_FOUND) message("OPENMP FOUND") ADD_DEFINITIONS(-DUSE_OPENMP) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}") endif() #set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -Wno-reorder" CACHE STRING "" FORCE) #set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -DNDEBUG -Wno-reorder -O2" CACHE STRING "" FORCE) set(CMAKE_CXX_FLAGS_DEBUG "{CMAKE_CXX_FLAGS} -o0 -ggbd") #添加语句 add_compile_options(-g) #添加语句 list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake") option(BUILD_APPS "Build APPs for slam course" YES) option(BUILD_TESTS "Build test for slam course" No) # third party libs # eigen find_package(Eigen REQUIRED) include_directories(${EIGEN_INCLUDE_DIR}) # opencv find_package(OpenCV 4 REQUIRED) include_directories(${OpenCV_INCLUDE_DIRS}) # glog find_package(Glog REQUIRED) include_directories(${GLOG_INCLUDE_DIRS}) # sophus include_directories(${PROJECT_SOURCE_DIR}/thirdparty/Sophus) include_directories(${PROJECT_SOURCE_DIR}) add_subdirectory(frontend) add_subdirectory(backend) add_subdirectory(utils) if (BUILD_APPS) add_subdirectory(app) endif () if (BUILD_TESTS) enable_testing() add_subdirectory(test) endif ()
5. Kompilieren Sie nach Abschluss der oben genannten Schritte erneut. Die Debugging-Spalte in vscode ist dann nicht mehr grau und Sie können das Debuggen in einem Schritt durchführen.
Wie im Bild gezeigt:
3. Wie Cmake das GDB-Debugging unterstützt
SET(CMAKE_BUILD_TYPE "Debug") SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb") SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall") add_compile_options(-g) #添加语句
Das obige ist der detaillierte Inhalt vonSo debuggen Sie vscode in einem Schritt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!