先梳理一下 Qt Creator / qmake 各文件和工具的关系:
- Qt 有一种专有的构建工具叫 qmake(与 CMake 类似的构建工具)
- qmake 的工程构建描述文件是
.pro文件(等同于 CMake 的CMakeLists.txt)- Qt Creator 可以直接打开
.pro文件,某种角度上它也是 Qt Creator 的工程文件(等同于 CLion 的 .idea 目录)- 如果一个项目含有一个
.pro文件却没有CMakeLists.txt文件,暗示了这个工程是在 Qt Creator 下编写的
我们再看一下 CLion 这边的情况:
- CLion 没有集成 qmake,无法根据
.pro文件创建项目- CLion 仅支持 CMake,可根据
CMakeLists.txt直接创建项目
那么问题来了:如果我们想用 CLion 打开一个 Qt Creator 项目(也就是 .pro 文件)应该怎么办呢?有一个专门的工具可以帮我们实现这一诉求:
- 命令行工具 qmake2cmake 可以将一个
.pro文件转换成CMakeLists.txt文件,这样就可以使用 CLion 无缝打开 Qt Creator 项目了
具体操作如下:
① 安装 qmake2cmake
使用 pip 安装 qmake2cmake 是最简单的,这需要你本地已经安装了 Python 和 Pip,然后执行以下命令即可:
cmd
python -m pip install qmake2cmake
② 打开命令行窗口,定位到存放 .pro 文件的目录,也就是工程根目录,执行:
cmd
qmake2cmake <your-project>.pro --min-qt-version <6.0>
其中需要指定的 Qt 版本可以填你本地安装的 Qt 版本。不过,有的时候,当你把一个 Qt 5 或更早版本的 Qt 项目转换为 CMake 文件时,可能会在构建的时候报错,有一部分的原因是 Qt API 的兼容性导致的,这时候可以试试把 --min-qt-version 的值改低一些,比如就设成 6.0。
③ 得到完备的 CMakeLists.txt 文件文件后,创建 CLion 项目就非常简单了,你可以选择"新建 "Qt Widgets Executalbe" 项目",将工程目录设定为 CMakeLists.txt 文件所在的目录,然后选择"Create from Existing Sources",或者直接选择"打开",找到 CMakeLists.txt 文件双击,然后选择 "Open as Project" 即可。