自动为 Qt 配置工具包

Configure kit for Qt automatically

太棒了!

假设我有一些设置(GCC 编译器 9.3.0 从源代码构建,因为我必须使用的发行版有一个非常旧的版本,以及环境设置)用于 QtCreator 中的新套件。

我已经设法设置了编译和执行已编译二进制文件的环境,并制作了一个脚本使其工作(比如 qmake -nocache -recursive/make/sudo make install, 直接执行 g++, 和其他东西).

脚本目前不能做的一件事是,它不能为 QtCreator 创建一个工具包,并根据需要设置新的编译器和环境,所以在 运行 一个脚本之后,它的用户必须通过 GUI 自行设置,这很糟糕,因为这会导致配置错误。

我正在尝试创建的这个东西将被我公司的大约 200 人使用,所以留下 readme.txt 说明对我来说还不够好 - 我不希望 运行 修复创建的套件中环境描述中缺少的“{”和“}”,以及其他内容。

有没有办法从命令行自动为 QtCreator 创建工具包?也许,有一些文件要编辑?

几年前我研究过这个(我想做一些类似的事情来在 QtCreator 中自动注册 Buildroot 工具链),但我找不到现成的解决方案。所以我认为有两种方法可以实现:

a) 实施命令行实用程序来操作 ~/.config/QtProject/qtcreator/{toolchains,profiles}.xml 文件。也许通过(重新)使用 QtCreator 中现有的 C++ 实现,或者只是重新实现它。在 Python。比起我没有开始做这件事,因为没有真正的业务需求。

b) 切换到 qbs,因为 qbs 支持从命令行设置工具链(参见:https://doc.qt.io/qbs/cli-setup-toolchains.html

如果您决定采用解决方案 a),请告诉我,也许我们可以合作实施。

查看与 QtCreator 捆绑的命令行 sdktool

The SDK tool can be used to set up Qt versions, tool chains, devices and kits in Qt Creator.

There still is a lot of knowledge about Qt Creator internals required to use this tool!

我还没试过,不过我确实在Qt Creator安装目录的Tools/QtCreator/libexec/qtcreator子目录下找到了可执行文件。 ./sdktool --help 在 Linux 下为我工作。