使用CMake搭建简单的Qt程序

目录结构

代码

CMakeLists.txt:

bash 复制代码
cmake_minimum_required(VERSION 3.15)

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

# set the project name
project(xxx)

# 设置Qt的路径
# 例如 E:/Qt/Qt/aaa/msvc2019_64
# aaa 为Qt的版本号
set(QT_PATH "C:/Qt/5.15.2/msvc2019_64")
set(CMAKE_PREFIX_PATH ${QT_PATH}/lib/cmake)

# 添加模块
find_package(Qt5 COMPONENTS Widgets Core Sql REQUIRED )
# include_directories(${QT_PATH}/include)
include_directories(${PROJECT_SOURCE_DIR}/inc)

file(GLOB_RECURSE user_headers inc/*.h)
file(GLOB_RECURSE user_cpps src/*.cpp)
set(user 
${user_headers}
${user_cpps})

add_executable(${PROJECT_NAME} WIN32
${user}
)

# link_libraries(${QT_PATH}/lib)

target_include_directories(${PROJECT_NAME}
PUBLIC
${PROJECT_SOURCE_DIR}/inc)

# 添加模块
target_link_libraries(${PROJECT_NAME} 
 Qt5::Widgets
 Qt5::Core
 Qt5::Sql)
相关推荐
T***160723 分钟前
C++在游戏开发中的AI行为树
开发语言·c++
自由生长20241 小时前
为什么C++项目偏爱.cxx扩展名:从MongoDB驱动说起
c++
CSDN_RTKLIB1 小时前
【GNU、GCC、g++、MinGW、MSVC】上
c++·gnu
b***74882 小时前
C++在系统中的内存对齐
开发语言·c++
散峰而望2 小时前
C++数组(三)(算法竞赛)
开发语言·c++·算法·github
4***14902 小时前
C++在系统中的编译优化
开发语言·c++
mit6.8242 小时前
[HomeKey] 握手协议 | NFC协议处理器
c++
oioihoii2 小时前
C++程序执行起点不是main:颠覆你认知的真相
开发语言·c++
hetao17338372 小时前
2025-11-25~26 hetao1733837的刷题记录
c++·算法
u***u6853 小时前
C++在系统中的异常处理
java·开发语言·c++