VS2022 Cmake项目构建 Qt

2024-08-22 13:44
文章标签 构建 项目 qt cmake vs2022

本文主要是介绍VS2022 Cmake项目构建 Qt,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.创建文件和配置CMakeLists

1.创建头文件MainWindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>namespace Ui {class MainWindow;
}class MainWindow : public QMainWindow
{Q_OBJECTpublic:explicit MainWindow(QWidget* parent = nullptr);~MainWindow();private:Ui::MainWindow* ui;
};#endif // MAINWINDOW_H

2.创建源文件MainWindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <iostream>MainWindow::MainWindow(QWidget* parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);
}MainWindow::~MainWindow()
{delete ui;
}

3.创建UI文件 MainWindow.ui (我这是空白的)

4.创建demomain.cpp

#include <QApplication>
#include <iostream>
#include "mainwindow.h"int main(int argc, char* argv[]) {QApplication app(argc, argv);MainWindow mainWindow;mainWindow.show();std::cout << "in func main" << std::endl;return app.exec();
}

5.创建CMakeLists.txt

cmake_minimum_required(VERSION 3.8)#set PROJECT_NAME and version
project(HelloWorld)
set(VERSION_MAJOR 0)
set(VERSION_MINOR 0)
set(VERSION_PATCH 1)#set path for QT 选择自己安装Qt的路径
set(CMAKE_PREFIX_PATH C:/Qt/6.5.3/msvc2019_64)# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)
# Instruct CMake to run moc automatically when needed
set(CMAKE_AUTOMOC ON)
# Create code from a list of Qt designer ui files
set(CMAKE_AUTOUIC ON)#find_package(Qt6 REQUIRED COMPONENTS Core Widgets Gui)
find_package(Qt6 REQUIRED COMPONENTS Widgets)
set(project_uiMainWindow.ui)set(project_headersMainWindow.h)set(project_sourcesdemoMain.cpp MainWindow.cpp)add_executable(${PROJECT_NAME} ${project_headers} ${project_ui} ${project_sources})# Use the widgets module from Qt 6
target_link_libraries(${PROJECT_NAME}PUBLIC#Qt6::Core#Qt6::GuiQt6::Widgets
)

二.使用VS打开并运行 

1.我的文件和位置

2.vs打开

 

 

可以选择生成的exe文件运行。 

三.总结

## 1.find_package(Qt6 REQUIRED COMPONENTS Widgets)
find_package()找的是.cmake文件,Qt6 的位置是可以通过set(Qt6_DIR "C:/Qt/6.5.3/msvc2019_64/lib/cmake/Qt6")来设置自己的Qt6文件所在的位置。
REQUIRED COMPONENTS 指必须要找到的后面指定的.cmake文件,找不到就报错

来自以下文章 

http://t.csdnimg.cn/I8EkQicon-default.png?t=N7T8http://t.csdnimg.cn/I8EkQ

这篇关于VS2022 Cmake项目构建 Qt的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1096434

相关文章

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

一文详解如何从零构建Spring Boot Starter并实现整合

《一文详解如何从零构建SpringBootStarter并实现整合》SpringBoot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序,:本文主要介绍如何从... 目录一、Spring Boot Starter的核心价值二、Starter项目创建全流程2.1 项目初始化(

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

使用Python和python-pptx构建Markdown到PowerPoint转换器

《使用Python和python-pptx构建Markdown到PowerPoint转换器》在这篇博客中,我们将深入分析一个使用Python开发的应用程序,该程序可以将Markdown文件转换为Pow... 目录引言应用概述代码结构与分析1. 类定义与初始化2. 事件处理3. Markdown 处理4. 转

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Qt 中 isHidden 和 isVisible 的区别与使用小结

《Qt中isHidden和isVisible的区别与使用小结》Qt中的isHidden()和isVisible()方法都用于查询组件显示或隐藏状态,然而,它们有很大的区别,了解它们对于正确操... 目录1. 基础概念2. 区别清见3. 实际案例4. 注意事项5. 总结1. 基础概念Qt 中的 isHidd

QT移植到RK3568开发板的方法步骤

《QT移植到RK3568开发板的方法步骤》本文主要介绍了QT移植到RK3568开发板的方法步骤,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录前言一、获取SDK1. 安装依赖2. 获取SDK资源包3. SDK工程目录介绍4. 获取补丁包二