vscode+qt5+cmake编译调试过程解析

目录
  • 环境
  • 编译vscode+cmake+qt5.14
    • 文件列表
    • cmakelists.txt完整内容
  • 编译
  • 调试
    • build.cmd
    • task.json
    • lauch.json
    • F5调试

环境

  • os: win11
  • cmake: 3.23
  • qt: qt5.14
  • 其他vscode c++辅助开发插件, 我的插件列表

编译vscode + cmake + qt5.14

文件列表

cmakelists.txt完整内容

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 + ,) 依次执行: cmake:select a kit 、cmake:select variant、 cmake:build
  • 编译结果:

调试

build.cmd

文件内容需要替换为本机的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调试

到此这篇关于vscode+qt5+cmake编译调试的文章就介绍到这了,更多相关vscode+qt5+cmake编译调试内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • vscode+PyQt5安装详解步骤

    1.默认已经有python环境和vscode 2.pip安装PyQt5 执行命令: pip install PyQt5 pip install PyQt5-tools 3.运行designer.exe 默认安装的话,在\Lib\site-packages\pyqt5_tools目录下找到designer.exe文件并运行 然后创建并保存一个.ui文件. 4.vscode环境配置 在vscode扩展里搜索PYQT integration并添加该扩展. 然后在vscode里打开刚才创建的.ui文件的

  • vscode和cmake编译多个C++文件的实现方法

    目的是利用vscode及相关插件编译多个C++文件. 我已经装好cmake和mingw并且将它们的路径添加到系统变量path中了. vscode装上如下几个插件: 点击vscode左上角 文件->首选项->设置,弹出如下窗口: cmake tools里头有一项cmake.preferredGenerators要根据编译器修改成对应的值,mingw对应的是MinGW Makefiles 下面一项cmake要配置cmake的安装路径,我的是C:\\Program Files\\CMake\\bin

  • centos 7 vscode cmake 编译c++工程的教程详解

    一.环境说明 1)gcc/g++  cmake安装建议 gcc/g++内核自带的即可,如果需要新的自行安装, cmake也一样,如有需要新的版本自行安装. 2)vscode安装插件 必要的插件c/c++ 0.28.1 cmake 0.0.17 cmake tools 1.4  (这几个插件的版本可能会不同,以扩展搜索到的最新的为准) 二.创建项目实验 1)打开项目文件夹 第一步:打开vscode,点击左上角文件,在下拉菜单选择打开文件夹!注意,是打开文件夹,不是工作区,也不是其它的!! 第二步:

  • PYQT5 vscode联合操作qtdesigner的方法

    除了使用pycharm外,还可使用vscode来操作pyqt,方法如下: 1. 在vscode中配置相关的pyqt的相关 根据自己实际情况修改第一项pyqt的路径 2. 创建一个文件夹,右键,最后一项可以创建一个新窗口 创建的新窗口后缀为 .ui 右键中有以下四个选项,分别是创建一个新窗口,预览,编辑,编译产生py文件. 我们在designer中设计完成后,通过最后一个编译生成文件. 通过pycharm生成的为一个和designer一样的py文件,如上图中第二个文件.通过vscode生成的是以U

  • vscode+qt5+cmake编译调试过程解析

    目录 环境 编译vscode+cmake+qt5.14 文件列表 cmakelists.txt完整内容 编译 调试 build.cmd task.json lauch.json F5调试 环境 os: win11 cmake: 3.23 qt: qt5.14 其他vscode c++辅助开发插件, 我的插件列表 编译vscode + cmake + qt5.14 文件列表 cmakelists.txt完整内容 cmake_minimum_required(VERSION 3.18) projec

  • 使用VSCode和VS2017编译调试STM32程序的实现

    近两年,微软越来越拥抱开源支持跨平台,win10搭载Linux子系统,开源VSCode作为跨平台编辑器,VS2017官方支持了Linux和嵌入式开发功能. ST也是,近两年开发的软件工具基本都是跨平台(基于Java)的,比如STM32CubeMX,MCUFinder,STM32CubeProgrammer等.17年年底收购了truestudio的开发公司-Atollic.这个公司的IDE就是基于Eclipse使用GNU套装的. 官方都支持了,那我们有必要了解一下.要是好用,说不定就可以淘汰老旧的

  • TypeScript使用vscode监视代码编译的过程

    安装 全局安装ts命令 npm install -g typescript 安装结束后运行tsc -v命令 显示版本号表示安装成功 接下来可以使用tsc 文件名称 可以将ts文件转化为js文件 js文件可以引入在html文件中直接使用 监视ts文件 在文件夹中执行 tsc --init 可以生成tsconfig.json文件 打开该文件可以看到 内容如下 { "compilerOptions": { /* Visit https://aka.ms/tsconfig.json to re

  • 在vscode中配置python环境过程解析

    1.安装vscode和python3.7(安装路径在:E:\Python\Python37): 2.打开vscode,在左下角点击设置图标选择setting,搜索python path,在该路径下选择python的安装路径(E:\Python\Python37),如下图: 3.在本地新建一个文件夹,在vscode里直接打开: 4.点击新建一个.py文件,这里为hello.py,并打开这个文件: 5.按F5运行这个文件,会弹出Add configurations框,选择python文件即可,会在l

  • Linux下将源文件编译成目标文件的过程解析

    简介 请讲一下linux如何源文件逐步编译成可执行文件. 解答 首先先上图对编译的整个过程有个感性的认识,然后再逐步分析各个过程. 以hello.c 程序为例 # include <stdio.h> main{ printf("hello\n"); } 一个.c源程序需要经过预处理器生成.i文件,再经过编译器生成.s文件,再经过汇编器生成可重定位目标文件.o文件,再与其他.o文件经过链接器生成最终的可执行目标程序. 预处理阶段.主要是处理源文件中以"#"

  • Pycharm debug调试时带参数过程解析

    这篇文章主要介绍了Pycharm debug调试时带参数过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 今天在网上找了一个例子敲代码,因为我使用的是PyCharm,例子运行时需要带参数,开始不知道怎么带参数,网上搜了大半天,最终才找到自己想要的方法,记录一下. 代码中有需要使用到参数,如下图: 因为开始不知道怎么带参数,直接运行时,报错,因为没参数 运行时,至少需要一个文件参数,添加参数 在PyCharm中选择'Run'->Edit C

  • Node.js 深度调试方法解析

    在 Node.js 项目开发过程中,随着项目的发展,调用关系越来越复杂,调试工具的重要性日益凸显. Node(v6.3+)集成了方便好用 V8 Inspect 调试器,允许我们通过 Chrome DevTools 进行图形化的调试和性能分析.同时,我们也可以使用 VS Code,Webstorm 等支持的编辑器对 Node.js 程序进行调试. Node Inspect 要想启动调试器,我们需要在启动 Node.js 应用程序时传入 --inspect 标志,也可以使用该标志提供自定义的端口,例

  • 详解如何使用VSCode和CMake构建跨平台的C/C++开发环境

    目录 一.前言 二.开发工具 三.示例项目 四.使用CMake 4.1.如何引入一个第三方静态库 4.2.动态库的加载问题 4.3.utf-8编码格式的代码通过visual studio编译报错问题 4.4.可执行文件的工作目录问题 4.5.如何修改Mac上动态库的加载路径 五.利用VSCode的task.json执行指定命令 5.1.通过Ctrl+Shift+B执行CMake编译本地工程 5.2.通过Ctrl+B构建与运行可执行文件 六.利用VSCode的launch.json完成调试 一.前

随机推荐