vscode+qt5+cmake編譯調(diào)試過程解析
更新時間:2022年03月18日 08:26:52 作者:mohistH
這篇文章主要介紹了vscode+qt5+cmake編譯調(diào)試過程解析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
環(huán)境
- os: win11
- cmake: 3.23
- qt: qt5.14
- 其他vscode c++輔助開發(fā)插件, 我的插件列表


編譯vscode + cmake + qt5.14
文件列表

cmakelists.txt完整內(nèi)容
cmake_minimum_required(VERSION 3.18)
project(cmake_demo01 LANGUAGES CXX)
set(CMAKE_PREFIX_PATH "C:/major/development/tools/qt/5.14/install/5.14.2/msvc2015_64")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt5 COMPONENTS Widgets Gui Core LinguistTools REQUIRED)
# set(TS_FILES cmake_demo01_zh_CN.ts)
file(GLOB_RECURSE src_file ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
file(GLOB_RECURSE inc_file ${CMAKE_CURRENT_SOURCE_DIR}/include/*.h)
# file(GLOB_RECURSE ui_file ${CMAKE_CURRENT_SOURCE_DIR}/ui/*.ui)
# qt5_wrap_ui(wrap_ui_file ${ui_file})
# SOURCE_GROUP("ui" FILES ${ui_file} ${wrap_ui_file})
add_executable(${PROJECT_NAME}
${src_file}
${inc_file}
# ${wrap_ui_file}
# ${TS_FILES}
)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/ui)
# target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
target_link_libraries(cmake_demo01 PRIVATE Qt5::Widgets Qt5::Core Qt5::Gui)
# qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})編譯
- 打開 command platette(ctrl + ,) 依次執(zhí)行: cmake:select a kit 、cmake:select variant、 cmake:build
- 編譯結(jié)果:

調(diào)試
build.cmd
文件內(nèi)容需要替換為本機(jī)的Qt和msvc編譯器路徑
title test build command set VCINSTALLDIR=C:\major\development\tools\vs_2015\install\VC set QTDIR=C:\major\development\tools\qt\5.14\install\5.14.2\msvc2015_64 set PATH=%PATH%;%QTDIR%\bin call "%VCINSTALLDIR%\vcvarsall.bat" amd64 cmake --build ./build --config Debug --target cmake_demo01 -j 14 --
task.json
{
"version": "2.0.0",
"tasks": [{
"taskName": "qt5",
"type": "shell",
"command": "cmd",
"args": [
"/c",
"${workspaceRoot}/build.cmd",
"debug"
],
"group": {
"kind": "build",
"isDefault": true
}
}]
}lauch.json
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "cl.exe ",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceRoot}/build/debug/${workspaceFolderBasename}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"environment": [],
"console": "externalTerminal",
"preLaunchTask": "qt5"
}
]
}F5調(diào)試

到此這篇關(guān)于vscode+qt5+cmake編譯調(diào)試的文章就介紹到這了,更多相關(guān)vscode+qt5+cmake編譯調(diào)試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
VC++ loadlibrary()加載三方dll失敗, 返回錯誤碼:126的解決方法
今天在編寫VC++ loadlibrary()加載三方dll是總是失敗,并且返回錯誤碼:126,這里就為大家分享一下具體的解決方法2021-03-03

