CLion开发Qt

621 阅读3分钟

先简单闸述一下这样做的优势

CLlion本身的优秀,逐渐向VS看齐的全面的功能。也是面向未来的优秀全能开发平台。

系列用户无需重新上手

,强大的错误提示和警告提示 ,强大的代码补全,重构,生成,分析功能 ,配合插件库实现生产效率的最大化 。强大的调试分析能力

说亮优点必须说说缺点

,项目需要为cmake格式,qmake格式的项目需要进行简单的转化(因为代码相同,只是编译步骤不同,但是编译结果相同) 。每次开始写项目都需要做少量工作,比如配置cmakelis文件 ,相比aTCreator,运行速度会稍慢(CLon软件占用内存更大) 。不能同时安装msvc和mimgw的gQT库,这会导致一些问题。最好的解决方法是重装 。CLion收费,在此不提供任何有关的破解方案。 Tips 你不需要配置外部uic工具,cmake会帮你做uic的转化(ui文件编译为C*) 你不需要配置ui文件打开方式,CLion会帮你打开QTCreator来绘制窗口

下载安装QT

juejin.cn/post/722769…

下载安装cmake

QTCreator不自带cmake,下一个装就好


先测试原生版本能不能启动

image-20220814235620133

image-20220814235719759

这里我们用Cmake

image-20220814235705053

image-20220814235907963

image-20220814234450496

这个错误十分的简单,就是路径有中文!!!!

image-20220815000051378

image-20220815000115467

现在就说明这个可以运行的了的,

现在把刚才的项目放到Clion去运行一下看看

打开,然后会有一个弹窗

image-20220815000534621

如果没有工具链就去选择一下

image-20220815000704549

如果默认工具链是QT(clion旧的版本)的话,可能项目运行不了,所以选mingw

Qt5Config.cmake找不到

image-20220815001448805

set(CMAKE_PREFIX_PATH "C:/Qt/Qt5.14.2/5.14.2/mingw73_64/lib/cmake/Qt5")#这个是你安装Qt的路径,让他找到

ui的头文件找不到

  • 假设生成的目标为Test,在CMakeLists.txt文件的最后一行添加:
target_include_directories(Test PRIVATE "${CMAKE_BINARY_DIR}/Test_autogen/i")

首次运行QT0xC0000135错误

image-20220815003722413

学官网加环境变量是最好的(这个Qtcreater的mingw的编译器的环境变量)

C:\Qt\Qt5.14.2\5.14.2\mingw73_64\bin

配置到环境变量里 (需要重启电脑)

Qt Creator打开CMake项目

【文件】->【打开文件或项目】->选择CMakeLists.txt文件


这个问题我没遇到过

解决方案是

编译完成后,在qt里找到windeployqt.exe 运行

windeployqt.exe xxxx.exe #XXXX.exe就是你编译后的exe 1 2 它会把依赖文件复制到编译文件夹内

然后再运行

上述步骤只需要进行一次,除非你引用了新的库

编译到链接库阶段报错moc_mainwindow.cpp:99: undefined reference to ‘imp

三类问题,第一是在头文件声明的函数没写定义(网上说的)

(我不是这个问题,而且我觉得这不会导致编译直接过不了)

第二个是编译链同时装了msvc和mingw的库,混合编译了。最好的办法就是重装

stackoverflow.com/questions/3…

第三种问题和用了websocket等插件类(它官网是这么描述的)的类功能,需要进行如下修改

find_package(QT NAMES Qt6 Qt5 COMPONENTS WebSockets Widgets REQUIRED)
​
target_link_libraries(QTPlayer PRIVATE Qt5::Widgets Qt5::WebSockets)
​

这类似于qt的pro文件里的

QT+=WebSockets
​