用CLion编写Qt程序 配置指南

虽然 Clion 并不是编写 Qt 程序的一个好选择,但是对于习惯 Jetbrains 家 IDE 的人来说还是可以一用的。

本人使用的环境:

  • Windows 11 22H2
  • Qt 5.15.2
  • Clion 2022.3.1

前期准备

1. 下载 Clion

不多赘述

大学生可以申请免费使用,详见 JetBrains 学习产品

2. 下载 Qt

  1. 由于 qt 不再对个人用户提供离线安装器,所以只能去 这里 下载在线安装器,选择自己系统对应的版本即可。
  2. 注册 Qt 账号,同意开源义务,等待,选择安装目录
  3. 选择组件的时候:(可以参考图片)
    1. 先在右侧筛选,只要 LTS
    2. Qt Design Studio 我选了 3.9.0 版本,虽然好像没用上,但还是选一个吧
    3. Qt 目录下,选择 Qt 5.15.2, 我选择了 MingGW 的 32 位和 64 位,MSVC 也可以,剩下的各取所需
    4. Developer and Designer Tools 下,QtCreator 的那几个,CMake,Ninja 一定选上;选项的主要功能如下(来源网络,准确性未知)
      1. CDB Debugger (command line debugger):控制台调试器,是 MSVC 在 Qt 的原生调试器,由于 MSVC 只有编译器,如果选择它,则需要勾选;如选择 MinGW 则不需要,MinGW 中有 GDB 调试器。
      2. MingGW :这里的 MingGW 是用来交叉编译的,在一个平台上生成另一个平台上的可执行代码。
      3. Strawberry Perl:Perl 语言工具 Qt 安装
  4. 接下来按照指引即可
  • 少装了什么组件也没关系,可以到安装目录下找到 MaintenanceTool.exe 更改

配置

可以参考 JetBrains 的这篇文档 Qt projects | CLion Documentation (jetbrains.com)

  1. 打开 Clion,新建项目 ->Qt 微件可执行文件(widget)
  2. 位置、c++ 标准自己填,Qt 版本选 5
  3. Qt CMake 前缀路径(prefix):填 %qt 安装路径%/版本号/编译器文件夹
    • 例如:我的是“C:/Environments/qt/5.15.2/mingw81_64”;jetbrains 给的示例是 “C:\Qt\Qt5.14.0\5.14.0\mingw73_32\”
    • 不用双引号,用/还是\应该都问题不大,不行就换一个试试
  4. 点确定后,CLion 会自动生成一段示例代码,同时生成 CMakeList.txt,这时候就可以直接运行了,不行的话可以重新加载一下 CMake 项目

重新加载 Cmake

  • 还是不行的话,检查一下第三步又没有做对,如果是一开始没有设对前缀路径的话据我所知至少要在两个地方更改:
    1. CMakeList.txt 文件中,修改 set(CMAKE_PREFIX_PATH "%你的前缀路径%")
    2. 构建与运行配置中 所以如果弄错了,我觉得最好的方法就是再来一遍创建项目

外部工具

  • 通过 QtCreator,可以很方便的编辑.ui 和.qrc 文件,我们的目标就是使用它来编辑 Qt 专属的文件类型
  • 打开文件 ->设置 ->工具 ->外部工具,新建一个条目 外部工具 “程序”的链接换成自己的 QtCreator 的位置即可
  • 以后要编辑.ui 或者.qrc 文件,可以右击它们,External Tools->QtCreator,即可。

其他

  • 还有问题的话,可以看看上面提到的那篇 JetBrains 写得文档,对于用 CLion 写 Qt 这件事描述的比较透彻了
  • CLion 写 cpp 程序的优点就不提了,对于 Qt 来说,CLion 最头疼的是自带的调试工具没法看 Qt 类型数据的内容,比如 QString,QList 之类的。对于 QString 来说,qDebug() 还没法在调试的时候输出,一个比较笨的方法是利用 Qstrig 的 toStdString 方法来通过调试工具看值

本文使用“署名-非商业性使用-相同方式共享 4.0 国际(CC BY-NC-SA 4.0)”进行许可。

商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接。 如果您再混合、转换或者基于本作品进行创作,您必须基于相同的协议分发您贡献的作品。

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.3.0