使用cmake preset + vs2022构建Qt C++项目

发布于:2025-03-03 ⋅ 阅读:(106) ⋅ 点赞:(0)

直奔主题:
Qt6官方推荐已经从qmake到cmake迁移了,以后cmake的支持会越来越多。
cmake preset是cmake新版本中添加的内容,通过预设去构建cmake项目
由于vs2022的默认预设会自动生成,需要配置环境变量,windows版本的是msvc版的,如果需要切换mingw64需要在preset文件中添加对应的mingw64的环境。需要用到自定义的配置环境要将hidden字段置为false
内容如下:

{
  "version": 3,
  "configurePresets": [
    {
      "hidden": false,
      "name": "test",
      "generator": "Ninja",
      "binaryDir": "${sourceDir}/build/",
      "cacheVariables": {
        "CMAKE_PREFIX_PATH": "D:/Qt/Qt6/6.5.3/mingw_64", //C:/DevelopSoftware/Qt6/6.5.3/msvc2019_64
        "CMAKE_BUILD_TYPE": "Debug",
        "CMAKE_C_COMPILER": "D:/Qt/Qt6/Tools/mingw1120_64/bin/gcc.exe",
        "CMAKE_CXX_COMPILER": "D:/Qt/Qt6/Tools/mingw1120_64/bin/g++.exe"
      },
      "vendor": {
        "qt-project.org/Qt": {
          "checksum": "wVa86FgEkvdCTVp1/nxvrkaemJc="
        },
        "microsoft.com/VisualStudioSettings/CMake/1.0": {
          "intelliSenseMode": "linux-gcc-x64", // 指定IntelliSense模式
          "intelliSenseOptions": {
            "useCompilerDefaults": true, // 是否使用编译器默认定义并包含路径
            "additionalCompilerArgs": [ "-std=c++17" ] // 控制IntelliSense的其他选项
          }
        }
      }
    },
    {
      "hidden": true,
      "name": "Qt",
      "cacheVariables": {
        "CMAKE_PREFIX_PATH": "$env{QTDIR}"
      },
      "vendor": {
        "qt-project.org/Qt": {
          "checksum": "wVa86FgEkvdCTVp1/nxvrkaemJc="
        }
      }
    }
  ],
  "vendor": {
    "qt-project.org/Presets": {
      "checksum": "67SmY24ZeVbebyKD0fGfIzb/bGI="
    }
  }
}

网站公告

今日签到

点亮在社区的每一天
去签到