admin管理员组文章数量:1530037
文章目录
- 摘要
- 国内镜像源下载安装qt6.5
- 工程文件准备
- vscode开发环境
- clion开发环境
- 写在后面
摘要
自qt6开始官方已不再提供离线安装包,只提供在线选择组件方式安装,默认的下载服务器是国外的,使用国内镜像源可以加速下载。自qt6开始构建配置生成器源生支持cmake,当然qmake也能使用。vscode是程序员界的使用率top1的编辑器,使用vscode配合插件和cmake脚本也能写qt项目,qt官方的IDEQt Cearter也是可以用的,看自己的选择。还有一个Jetbrains公司的Clion(世界上最好的c/c++开发IDE),在智能提示、跳转、重构、插入头文件遥遥领先,本文主要内容是使用国内镜像源安装qt6.5并使用vscode搭建一个qt的demo程序
关键字: qt6.5、vscode、cmake、clion
国内镜像源下载安装qt6.5
- 进入镜像网站,根据自己系统选择下载
- 在命令行中输入
.\qt-unified-windows-x64-online.exe --mirror https://mirror.nju.edu/qt
- 输入账号密码,点击下一步
- 接受开源许可,点击下一步
- 选择不发送,点击下一步
- 选择安装路径
- 组件选择
- 勾选已经阅读许可协议,点击下一步
- 速度还是挺快的,基本能达到最大宽带速率
- 安装完成后将以下路径添加到环境变量PATH中,方便后续新建工程运行程序不用拷贝动态库到构建输出的文件夹下,在程序的当前路径查找不到动态库时程序会直接在环境变量PATH中路径中寻找动态库,开发完成只用windeployqt工具直接发布程序就行了
工程文件准备
- 准备以下源文件
main.cpp
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
//注意此头文件名字是ui文件的名字加上 "ui_" 前缀形成的,必须这样包含文件否则无法自动调用uic生成头文件
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
- UI文件可以使用designer.exe生成,直接双击运行程序(为了方便可以固定到任务栏)
点击创建之后再按快捷键crtl+ s,保存文件。或者使用菜单栏中文件选项卡中的保存功能,弹出保存对话框选择保存目录并重名文件为mainwindow.ui
mainwindow.ui文件
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget"/>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>21</height>
</rect>
</property>
</widget>
<widget class="QStatusBar" name="statusbar"/>
</widget>
<resources/>
<connections/>
</ui>
cmake脚本文件CMakeLists.txt,此脚本兼容qt5和qt6
cmake_minimum_required(VERSION 3.22)
project(demo
VERSION 0.0.0.1
DESCRIPTION "is a demo"
LANGUAGES C CXX
)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# qt库安装目录,根据自己的安装目录修改
set(CMAKE_PREFIX_PATH "C:\\Programs\\Qt6.5.3\\6.5.3\\msvc2019_64")
find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED)
# 查询库,其他库自行添加,库名字和使用qmake不同,在qt的帮助手册能查到,同使用qmake时查询方式相同
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS
Core
Gui
Widgets
REQUIRED
)
# msvc源文件设置utf-8编码,否则源文件含有中文编译出错,使用mingw版本编译器也不用删除这行,生成器表达式会自动判断编译器类型
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
#头文件递归搜索宏,方便从顶层文件夹搜索头文件并自动为编译器添加头文件搜索路径
macro(header_directories parent)
file(GLOB_RECURSE newList ${parent}/*.h)
set(dir_list "")
foreach (file_path ${newList})
get_filename_component(dir_path ${file_path} DIRECTORY)
set(dir_list ${dir_list} ${dir_path})
endforeach ()
list(REMOVE_DUPLICATES dir_list)
include_directories(${dir_list})
endmacro()
header_directories(src)
#使用正则表达式递归搜索文件
file(GLOB_RECURSE SRC "src/*.c*")
file(GLOB_RECURSE INC "src/*.h*")
file(GLOB_RECURSE UI "src/*.ui")
file(GLOB_RECURSE QRC "src/*.qrc")
file(GLOB_RECURSE RC "src/*.rc")
#添加可执行程序目标
if(CMAKE_BUILD_TYPE MATCHES "Release")
#发布版除去黑窗口,无qDebu打印
add_compile_definitions(QT_NO_DEBUG_OUTPUT)
add_executable(${PROJECT_NAME} WIN32 ${SRC} ${INC} ${UI} ${QRC} ${RC})
else ()
#调试版保留黑窗口,有qDebug打印
add_executable(${PROJECT_NAME} ${SRC} ${INC} ${UI} ${QRC} ${RC})
endif()
#为可执行程序目标添加动态链接库
target_link_libraries(${PROJECT_NAME} PUBLIC
Qt${QT_VERSION_MAJOR}::Core
Qt${QT_VERSION_MAJOR}::Gui
Qt${QT_VERSION_MAJOR}::Widgets
)
vscode开发环境
-
安装vscode,直接参考以前的博客,在vscode中需要额外安装qt开发的插件,方便编辑ui文件。
-
用vscode打开工程文件夹,注意源文件放在了src文件夹下,CMakeLists.txt放在了最上层,工程编译、执行、debug同一般c++工程相同,不明白的可以看上文提到的博客
-
编辑ui文件,右击ui文件可以使用designer打开文件
clion开发环境
- clion安装流程可以参考这篇博客只需要看安装部分即可,用clion打开工程文件夹,由于我安装的是msvc版本,工具链选择了Visual Studio,如果是安装的mingw版本的直接使用默认的工具链即可。
- 如果同样是MSVC版本的但没有Visual Studio工具链,先安装Visual Studio2022,在设置中添加工具链,注意工具集是Visual Studio2022的安装路径,下面的c/c++编译器自动识别,调试器也自动识别,架构选择amd64
- 将工程使用的工具链设置为Visual Studio,其他方面的使用同开发一般c++程序相同
- 编辑ui文件,添加一个外部工具
- 右击文件可以使用外部工具,调用designer打开文件
写在后面
如果本文对你有帮助不要吝啬你的点赞、收藏、评论、关注,也欢迎嗮出你的博客一起进步,对博客不明白的地方可以在评论区交流
版权声明:本文标题:使用国内镜像安装qt6.5,配合vscode和clion双环境写代码(包含cmake配置脚本) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1726583767a1076404.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论