Qt6编译(MSVC)

最后更新:

参考资料

下载源码包

安装build工具并配置相关环境变量

  • Visual Studio 2019或2022
  • CMake Version 3.16 and newer (3.17 and newer for builds 3.21 and newer for builds)
  • Ninja
  • Python Version 3 Required build tool. Windows installers are available on python.org, or from the Microsoft Store.

验证build工具是否正确安装

  • 打开"x64 Native Tools Command Prompt for VS 2022"
  • 输入
    1
    2
    3
    
     cmake --version
     ninja --version
     python -V
    

设定文件夹

  • F:\Qt\6.5.3\src 源码目录qt-everywhere-src-6.5.3.zip解压,并改名为src,放置于F:\Qt\6.5.3\src
  • F:\Qt\6.5.3\build-msvc2019_64 build目录(Release版本)
  • F:\Qt\6.5.3\build-msvc2019_64d build目录(Debug版本)
  • F:\Qt\6.5.3-static\msvc2019_64 最后安装目录(Release版本)
  • F:\Qt\6.5.3-static\msvc2019_64d 最后安装目录(Debug版本)

编译Release版本

  • 建立F:\Qt\qt6vars.cmd文件,需设置好VS2022的bat路径(x64 Native Tools Command Prompt for VS 2022)、是否amd64、Qt源代码路径

  • 建立cmd链接cmd-qt6vars,并运行

    • 本步骤主要用途为
      1. 开启cmd.exe /E:ON /V:ON
      2. 将Qt源码相关路径加入PATH
    • /E:ON 启用命令扩展 详见[cmd.exe启动参数说明]
    • /V:ON 启用延迟的环境变量扩展
  • 输入

    1
    2
    
     F:
     cd Qt\6.5.3\build-msvc2019_64
    

    依上述定位到F:\Qt\6.5.3\build-msvc2019_64 依次执行命令

    1
    2
    3
    
     ..\src\configure.bat -static -prefix "F:\Qt\6.5.3-static\msvc2019_64" -release
     cmake --build .    #不要忘记点
     cmake --install .  #不要忘记点
    

编译Debug版本

  • 关闭上述命令窗口,重新运行cmd链接cmd-qt6vars

  • 输入

    1
    2
    
     F:
     cd Qt\6.5.3\build-msvc2019_64d   #注意路径有d
    

    依上述定位到F:\Qt\6.5.3\build-msvc2019_64d 依次执行命令

    1
    2
    3
    
     ..\src\configure.bat -static -prefix "F:\Qt\6.5.3-static\msvc2019_64d" -debug  #注意路径有d,编译选项为-debug
     cmake --build .    #不要忘记点
     cmake --install .  #不要忘记点
    

编译(此段内容为历史记录,作废)

  • 打开"x64 Native Tools Command Prompt for VS 2022"

  • 本步骤在2023-11-23编译时未使用,查看官网文档可将上一步替换优化如下

    • 建立F:\Qt\qt6vars.cmd文件,需设置好VS2022的bat路径、是否amd64、Qt源代码路径
    • 建立cmd链接cmd-qt6vars,并运行
    • 比较后,本步骤主要用途为
      1. 开启cmd.exe /E:ON /V:ON
      2. 将Qt源码相关路径加入PATH
    • /E:ON 启用命令扩展 详见[cmd.exe启动参数说明]
    • /V:ON 启用延迟的环境变量扩展
  • 输入

    1
    2
    
     F:
     cd Qt\6.5.3\build-msvc2019_64
    

    依上述定位到F:\Qt\6.5.3\build-msvc2019_64 依次执行命令

    1
    2
    3
    4
    
     #2023-11-23编译、2023-11-24编译
     ..\src\configure.bat -static -prefix "F:\Qt\6.5.3-static\msvc2019_64" -debug-and-release
     cmake --build .    #不要忘记点
     cmake --install .  #不要忘记点
    
  • 2023-11-24编译解决带d版本在camke –install .时没有被复制过来

    1. 清空build目录,最后安装目录不动

    2. 依次执行命令

    1
    2
    3
    4
    
    #重新用-debug编译一次
    ..\src\configure.bat -static -prefix "F:\Qt\6.5.3-static\msvc2019_64" -debug
     cmake --build .    #不要忘记点
     cmake --install .  #不要忘记点
    

说明

  • 其中-static就是静态编译的意思,而后面的-debug-and-release,则表示将调试版、发行版都进行编译。
  • 等待配置完成后,再运行命令cmake –build .开始构建:
  • 然后就是慢慢等编译了,这个过程比较漫长,如果电脑配置较低,估计需要几个小时:
  • 编译完成后,继续运行命令cmake –install .即可将编译好的静态库安装到前面我们所指定的目录中去:
  • 此时你就可以删除前面的build文件夹,释放110多G的空间,它已经没用了。

2023-11-23编译(已删除)

  • 环境:YPR-Desktop、Windows 11 pro 23H2、Visual Studio 2022、约20分钟、1.41GB
  • build文件夹约100多GB,已删除
  • 测试时程序无法Debug:带d版本在build文件夹中已编译,但在camke –install .时没有被复制过来,参考VS2022编译安装Qt6.4

2023-11-24编译

  • 环境:YPR-Desktop、Windows 11 pro 23H2、Visual Studio 2022、约20分钟、Release1.41GB+Debug15.6GB
  • 采用了qt6vars.cmd
  • build文件夹约111GB(单独Release为51.3GB,单独Debug为77.9GB),已删除
  • 测试时程序无法Debug:带d版本在build文件夹中已编译,但在camke –install .时没有被复制过来,参考VS2022编译安装Qt6.4
  • 解决方案:用-debug选项再编译一次(build文件夹需清空,install文件夹需备份Release版本)
  • -debug和–release选项有同名文件但大小不同,install文件夹不能合并
  • Debug版本QTDIR路径不是F:\Qt\6.5.3\build-msvc2019_64d而是F:\Qt\6.5.3\build-msvc2019_64,应用qt.conf修正
  • 存档:7z(9-极限压缩)
     转载说明:请附上本文链接及上述版权声明。