qt 工程 CMakeLists.txt

这篇博客详细介绍了如何使用CMakeLists.txt文件来配置和构建Qt工程。内容包括设置工程、关闭控制台选项、查找Qt库、自动处理源文件、资源文件以及设置运行环境。通过这个过程,读者可以学习到如何将Qt与CMake结合,进行项目的构建和管理。

cmake_minimum_required(3.13.2)

#设置工程
project(qtlearn)
# 关闭控制台 :+ WIN32
set(QT_USE_QTMAIN TRUE) 
# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON) 
# 自动生成开关
set(CMAKE_AUTOMOC ON) 
set(CMAKE_AUTOUIC ON) 
set(CMAKE_AUTORCC ON)         
# 查找lib
find_package(Qt5Core QUIET) 
find_package(Qt5Gui QUIET) 
find_package(Qt5Widgets QUIET)     

# 查找 source
set(src_dir .)
foreach(dir ${src_dir})
    string(TOUPPER "${dir}" dir_u)            
    file(GLOB ${dir_u}_UI_FILES ${dir}/*.ui)
    file(GLOB ${dir_u}_H_FILES ${dir}/*.h)
    file(GLOB ${dir_u}_CXX_FILES ${dir}/*.cpp)    
    list(APPEND UI_FILES ${${dir_u}_UI_FILES})        <

好的,Qt Creator 是一个强大的集成开发环境 (IDE),主要用于创建 Qt 应用程序。而 CMakeLists.txt 文件则是用于配置 CMake 构建系统的文本文件。 ### 使用 Qt Creator 和 CMake 导出 .exe 可执行文件 #### 步骤一:设置项目 1. **打开 Qt Creator** 并加载或新建你的项目。 2. 确保项目的构建系统是 `CMake` 而不是 qmake 或其他工具。 #### 步骤二:编写并维护 CMakeLists.txt 为了成功生成 `.exe` 文件,在 `CMakeLists.txt` 中你需要确保包含正确的指令: ```cmake # 最低版本需求 cmake_minimum_required(VERSION 3.5) # 设置项目名称 project(MyProject VERSION 0.1 LANGUAGES CXX) # 查找 Qt 模块 find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets) # 添加源码目录及头文件路径 set(CMAKE_CXX_STANDARD 17) add_executable(${PROJECT_NAME} main.cpp) # 根据实际情况调整main文件位置和其他需要添加的cpp/hpp文件 target_link_libraries(${PROJECT_NAME} PRIVATE Qt6::Core Qt6::Gui Qt6::Widgets) if(WIN32) set_target_properties(${PROJECT_NAME} PROPERTIES SUFFIX ".exe") endif() ``` 上述是一个基本的例子,并根据实际使用的库、模块等进行相应的修改。 #### 步骤三:选择合适的构建套件和模式 在 Qt Creator 的左下角有“Build Kit”选项,这里可以选择不同的编译器和平台组合。通常对于 Windows 用户来说,默认就是 MinGW 或 MSVC 工具链之一;如果你希望发布给更多用户,则可以考虑静态链接所有依赖项。 另外,记得切换到 Release 模式而非 Debug 来获得更小体积和更好性能的应用程序。 #### 步骤四:运行构建过程 点击绿色三角形按钮或者通过菜单栏中的 "Build" -> "Rebuild All" 完成整个工程的一次全新构建流程,此时会在指定输出目录下找到新产生的 `.exe` 文件。 如果一切顺利的话,现在你应该能够在 build-output 目录看到生成的目标`.exe`了!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值