使用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)
相关推荐
Bella的成长园地7 小时前
面试中关于 c++ async 的高频面试问题有哪些?
c++·面试
彷徨而立7 小时前
【C/C++】什么是 运行时库?运行时库 /MT 和 /MD 的区别?
c语言·c++
qq_417129257 小时前
C++中的桥接模式变体
开发语言·c++·算法
clever1017 小时前
在QtCreator 4.10.2中调试qt程序qDebug()输出中文为乱码问题的解决
开发语言·qt
No0d1es9 小时前
电子学会青少年软件编程(C语言)等级考试试卷(三级)2025年12月
c语言·c++·青少年编程·电子学会·三级
吕司9 小时前
Qt的信号与槽
开发语言·qt
bjxiaxueliang10 小时前
一文掌握C/C++命名规范:风格、规则与实践详解
c语言·开发语言·c++
xu_yule11 小时前
网络和Linux网络-13(高级IO+多路转接)五种IO模型+select编程
linux·网络·c++·select·i/o
2301_7657031411 小时前
C++与自动驾驶系统
开发语言·c++·算法
轩情吖11 小时前
Qt的窗口(三)
c++·qt