Clion配置Qt+MSVC/MinGW环境
Clion配置Qt+MSVC/MinGW环境 (正在持续更新)
- Clion配置Qt+MSVC/MinGW环境
- 1. QT中的编译器
- 2. 两种编译器的优势劣势
- 3. Clion + Qt - MSVC 配置
- 3.1 Clion 、 Qt-MSVC 下载安装
- 3.2 Clion项目创建
- 3.2 项目设置
- 3.3 构建运行
- 4. Clion + Qt - MinGW 配置(接下来会更新)
Clion配置Qt+MSVC/MinGW环境
1. QT中的编译器
QT 中存在着两种编译方式,一种是MSVC,另一种是MinGW。在windows下使用clion写C++可以使用g++(windows下叫MinGW),也可以使用msvc(微软的编译器,必须下载Visual studio)
- MSVC (Mirosoft Visual C++ Compiler)是指微软的VC编译器
- MinGW是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库
安装QT时,一般情况下会选择其中一种。不能同时安装msvc和mingw的QT库。
2. 两种编译器的优势劣势
基于Windows环境的MinGW在进行deug时部分指针等变量并不兼容。
3. Clion + Qt - MSVC 配置
3.1 Clion 、 Qt-MSVC 下载安装
Clion-2021.3.2(各个版本均可不限制) Qt-5.x(最好是5.14之前-5.0之后,编译器MSVC2017_64)MSVC(VS2017)-VC15(安装VS2017,其他版本可能不支持)
安装过程自行百度 教程较多
3.2 Clion项目创建
各软件安装结束后,打开Clion,新建工程,注意两点:
- QT widgets exe 选择Qt widget项目
- Qt Cmake prefix path 选择自己的Qt安装目录下的msvc路径
最终create创建
项目自动生成 main.cpp 、 cmakelists.txt
cmake_minimum_required(VERSION 3.21)
project(MSVC_Qt)#set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -Wall -fexec-charset=GBK”)
set(CMAKE_CXX_STANDARD 14)############## QT 设定开始 ###############
#打开Qt的MOC、UIC、RCC等功能
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
# 设置Qt5的cmake模块所在目录,如果不设置将使用系统提供的版本
set(CMAKE_PREFIX_PATH "E:/progLanguage/Qt/Qt5.9.0/5.9/msvc2017_64")
# 从上面的目录找到对应的qt模块,名字为qmake中QT += <name>中的name首字母大写后加上Qt5前缀
#find_package(Qt5Widgets REQUIRED NO_DEFAULT_PATH)
find_package(Qt5 COMPONENTSCoreGuiWidgetsREQUIRED)
############## QT 设定结束 ############################## 最终输出 设定 ##############
add_executable(MSVC_Qt main.cpp)
target_link_libraries(MSVC_QtQt5::CoreQt5::GuiQt5::Widgets)
# 设定exe输出目标路径
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/bin)
# 设定库dll的输出路径
set(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/lib)################ Qt 其他相关设定-拷贝相关dll/a到执行文件目录下 大意为未配置或尝试找不到 Qt 安装目录,则警告 ###############
if (WIN32) set(DEBUG_SUFFIX)if (CMAKE_BUILD_TYPE MATCHES "Debug")set(DEBUG_SUFFIX "d")endif ()set(QT_INSTALL_PATH "${CMAKE_PREFIX_PATH}")if (NOT EXISTS "${QT_INSTALL_PATH}/bin")set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..")if (NOT EXISTS "${QT_INSTALL_PATH}/bin")set(QT_INSTALL_PATH "${QT_INSTALL_PATH}/..")endif ()endif ()if (EXISTS "${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll")add_custom_command(TARGET ${PROJECT_NAME} POST_BUILDCOMMAND ${CMAKE_COMMAND} -E make_directory"$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/")add_custom_command(TARGET ${PROJECT_NAME} POST_BUILDCOMMAND ${CMAKE_COMMAND} -E copy"${QT_INSTALL_PATH}/plugins/platforms/qwindows${DEBUG_SUFFIX}.dll""$<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins/platforms/")endif ()foreach (QT_LIB Core Gui Widgets)add_custom_command(TARGET ${PROJECT_NAME} POST_BUILDCOMMAND ${CMAKE_COMMAND} -E copy"${QT_INSTALL_PATH}/bin/Qt5${QT_LIB}${DEBUG_SUFFIX}.dll""$<TARGET_FILE_DIR:${PROJECT_NAME}>")endforeach (QT_LIB)
endif ()
#include <QApplication>
#include <QPushButton>
int main(int argc, char *argv[]) {QApplication a(argc, argv);QPushButton button("Hello world!", nullptr);button.resize(200, 100);button.show();return QApplication::exec();
}
3.2 项目设置
File->Setting->Build->toolcains
- 点击+号
- 选择VS项目
- ToolSet设定vs2017安装目录
- Arch选择amd64
- 如果有其他编译器,最终记得上箭头调整VS至最高并显示默认
3.3 构建运行
输出显示正常
4. Clion + Qt - MinGW 配置(接下来会更新)
MinGW 虽然可以使用,但是在结合于QT-Opencv、QT-GDAL等第三方库时会极为繁琐-劝退 。
Clion配置Qt+MSVC/MinGW环境相关推荐
- CLion配置Qt环境
配置CLion+QT5 前言 一.Qt的安装 二.安装Clion 三.配置Clion 总结 前言 我们在学习或者使用QT开发项目的时候,会使用Qt Creator进行编码,但是Qt Creator编译 ...
- VS2015 配置 Qt 开发编译环境
1.操作环境 1.1电脑环境:win7 X64 1.2 需要准备的工具 vs2015编译软件:cn_visual_studio_community_2015_with_update_3_x86_x64 ...
- Linux下配置Qt+ffmpeg开发环境 Ubuntu18.04
Linux Ubuntu18.04 ffmpeg编译安装与配置 前言 前期准备工作 安装yasm 安装nasm(2.13以上版本) 安装其他依赖 编译x264(只编译静态库) 编译SDL2 编译ffm ...
- QT - QT中配置MSVC编译环境 以及 VS中配置QT开发环境
本文主要记录一下如何在 QT5.14.2 中配置 MSVC2017 构建套件,以及在VS2017中配置QT的开发环境.开发环境为 Win10 + QT5.14.2 + Visual Studio 2 ...
- Qt简介以及如何配置Qt使用VS2010进行开发
转自:http://www.cnblogs.com/rockhawk/archive/2010/12/15/1906956.html Qt是神马东西? Qt – 一个跨平台应用程序和UI开发框架 它包 ...
- 建立Qt+VS2010开发环境
简单建立Qt+VS2010开发环境 多天不关注Qt了,发现竟然又被digia收购了,也许是好事,digia计划将Qt应用到Android.iOS及Windows8平台上. 简单介绍下digia(来着网 ...
- 如何在vs中导入libjpeg_Qt简介以及如何配置Qt使用VS2010进行开发(转)
Qt是神马东西? Qt – 一个跨平台应用程序和UI开发框架 它包括跨平台类库.集成开发工具和跨平台 IDE.使用 Qt 您只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部 ...
- QT + OpenCV + MinGW 在windows下配置开发环境
由于研究项目需要,最近开始接触C++界面设计,关于"QT + OpenCV + MinGW在windows下配置开发环境"着实让人头疼,单次配置时间相当长,也十分不容 ...
- Assimp + VSCODE + OpenGL + MinGW 环境配置全攻略
最近在 LearnOpenGL CN 上学习时遇到了一个究极大困难. LearnOpenGL CN Assimphttps://learnopengl-cn.github.io/03%20Model% ...
最新文章
- 【青少年编程】【三级】猜数字
- imageserver
- opengl纹理示例
- 一步一步将自己的代码转换为观察者模式
- BeetleX实现MessagePack和Protobuf消息控制器调用websocket服务详解
- java 递归调整为队列
- 【NOI2015】【codevs4600】【BZOJ4195】自动程序分析,我太弱了
- 从C#到Objective-C,循序渐进学习苹果开发(2)--Objective-C和C#的差异
- python优先级排序_Python Numpy重新排列双向排序
- window下的免安装redis
- gatewayfilter详解_Spring Cloud Gateway 之 Filter
- qdir 自动创建多级目录_QDir 类 - 目录信息类
- 电力拖动自动控制系统_教授为你解读“电气工程及其自动化”专业类
- 计算机系统基础第二版_2020年注册环保工程师公共基础考试题库
- javascript 在线文本编辑器
- 微信公众号授权登录配置
- java file 只读_Java如何设置文件为只读?
- 2012 r2 万能网卡驱动_6款USB无线网卡评测
- 双赞的一体机主板能应用到哪些行业?
- 利用Matlab替换图片部分颜色