某些情况需要使用cmake,如果手动将QT的pro文件转换成CMakeLists.txt,简短一点的pro还好,如果是比较复杂的pro,手动转换的时候需要长时间的debug,本人深有感受。
工具介绍:
qmake2cmake
工具创建一个CMakeLists.txt
文件,覆盖转换后的.pro
文件的大多数常见属性。- 生成的CMake项目可以作为基线使用,但可能需要手动调整。
- 无法转换的QMake构造将以注释的形式保留在CMake项目中。
前置工具安装:
python3.7 及以上(安装步骤这里就先不讲了,大家自行检索)
进入官方页面拉取工具代码:
地址:qt/qmake2cmake · Gerrit Code Review
官方已经把指令都写好了,直接复制指令:
git clone "https://codereview.qt-project.org/qt/qmake2cmake" && (cd "qmake2cmake" && mkdir -p `git rev-parse --git-dir`/hooks/ && curl -Lo `git rev-parse --git-dir`/hooks/commit-msg https://codereview.qt-project.org/tools/hooks/commit-msg && chmod +x `git rev-parse --git-dir`/hooks/commit-msg)
需要先安装 git ,git安装这里就先不解释了
Linux环境的话,粘贴到终端里面直接执行
Windows环境的话,打开Windows PowerShell , 将指令粘贴进去执行
安装工具:
接下来的步骤是创建和激活虚拟环境,并安装所需的依赖包:
- 创建虚拟环境:
python3 -m venv env --prompt qmake2cmake
,这行命令会创建一个名为env
的虚拟环境,并且环境的提示符会显示为qmake2cmake
。 - 激活虚拟环境:在Unix系统中使用
source env/bin/activate
,在Windows系统中使用env\Scripts\activate.bat
。 - 安装依赖:
pip install -r requirements.txt
,这行命令会根据项目根目录下的requirements.txt
文件安装所有必需的Python包。 - 最后,如果
pip install
命令不起作用,给出了一个替代命令:python3.7 -m pip install -r requirements.txt
最后执行 pip install qmake2cmake
工具安装好在这:
我用的是windows系统测试 如果是Linux的话, Python 环境的 bin/
目录下会有两个脚本:qmake2cmake
和 qmake2cmake_al
工具使用方法:
调用将单个 QMake 项目文件转换为 CMake
这条命令将 ~/projects/myapp/myapp.pro 文件转换为 CMake 格式,
并指定项目应使用的最低 Qt 版本为 6.3。必须指定一个最低 Qt 版本,
可以通过 --min-qt-version 选项或环境变量默认情况下,生成的 CMakeLists.txt 文件会放在 .pro 文件的同一目录下。
qmake2cmake ~/projects/myapp/myapp.pro --min-qt-version 6.3
如果需要在不同的位置生成 CMakeLists.txt,可以使用 -o 选项。
qmake2cmake ~/projects/myapp/myapp.pro --min-qt-version 6.3 -o ~/projects/myapp-converted/CMakeLists.txt
这条命令将 myapp.pro 文件转换为 CMake 格式,
并将生成的 CMakeLists.txt 文件放在 ~/projects/myapp-converted/ 目录下
要转换整个项目树,需要将项目目录传递给
qmake2cmake_all
qmake2cmake_all ~/projects/myapp --min-qt-version 6.3
这条命令将
~/projects/myapp
目录下的整个项目树转换为 CMake 格式。
windows使用的话,在 Windows PowerShell 运行指令
使用方法跟上面类似,只是在指令前面加一个 ./
./qmake2cmake ~/projects/myapp/myapp.pro --min-qt-version 6.3
./qmake2cmake ~/projects/myapp/myapp.pro --min-qt-version 6.3
./qmake2cmake_all ~/projects/myapp --min-qt-version 6.3
另外,最低qt版本不能低于6.0
这是我在windows环境下编译好的,自测可以使用,这里挂出来0积分下载,不清楚移植后是否可以用,大家有需要的好自己测一下哈,评论区可以留言讨论。
https://download.csdn.net/download/qq_39085747/90158841