Qt Creator的编译器配置

7

我刚接触Qt和它的集成开发环境Qt Creator,请见谅我的无知。

当我尝试编译我的代码时,我遇到了异常:

"Qt Creator需要设置编译器才能构建。在工具选项中配置编译器。"

我已经安装了用于编译C++代码的MingGW。但是,我在为Qt Creator进行配置时遇到了问题。

如果有帮助的话,将不胜感激。谢谢。

7个回答

8
我猜你正在使用新的5.0 Qt。对我来说,这也需要一些推动。
如果你查看“设置>构建&运行>套件”,你应该会看到一个自动检测的条目,它可能在前面有一个感叹号,而且不可编辑。忽略它。
添加一个新的工具包,给它命名,设置“Qt版本”并选择编译器。(编译器应该已经被自动检测到了。如果你没有看到任何编译器,你将不得不手动设置至少一个)
点击“设为默认”按钮。(您可能还需要修改项目构建设置以使用新的工具包)
可能有更好的方法,但我不知道。你应该使用4.x直到5版正式发布。

1
Qt 5昨天正式发布,但我同意您建议稍微再使用Qt 4一段时间(如果您不需要新的酷炫功能;-)。他需要添加一个编译器,然后更新他(应该)拥有的工具包,这样他就不需要更新项目了。 - Tobias Hunger
@TobiasHunger 哦,谢谢你的消息! :) 然而,虽然最终版本可能会有所不同,但自动检测到的工具包对我来说是不可修改的,因此没有办法绕过创建新的工具包。 - dualed
自动检测工具应该能够自动选择匹配的编译器。如果没有,请在 https://bugreports.qt-project.org/ 上提交错误报告。您可以随意克隆一个工具包并对其进行任何操作。附注:您可能需要升级到2.6.1版本(与Qt 5同时发布)。这将修复大部分工具包中最常见的问题。 - Tobias Hunger

2
我也遇到了同样的问题,解决方法如下:

我所做的是:

sudo apt-get install g++ 
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev

我随后关闭了QT创建器,重新启动它,然后它就正常工作了。

我不知道上述两种方法中的哪一种使其正常工作,但它现在可以运行了!


1

您正在使用Qt Creator 2.6.x,因为这些是唯一具有工具包的版本。

请转到“工具”>“选项”>“构建和运行”>“编译器”,并在那里添加您的mingw编译器。您需要将creator指向mingw安装中的“g++”。

然后转到Kits选项卡,单击creator应该为您创建的桌面套件。在详细信息中,有一个称为编译器(或工具链,不记得了)的字段。在那里选择您的mingw编译器。检查调试器字段。如果为空或使用mingw的gdb调试器:从http://builds.qt-project.org/获取调试器,安装它并将creator指向该调试器。作为mingw的一部分提供的调试器已知与creator不兼容。

不要使用Nokia Qt SDK:现在其中的所有内容都已过时!


0

这只是解决问题的起点,但Qt Creator首选项中有“构建和运行”区域的设置,您可以在其中定义构建工具链的位置:编译器、要构建的Qt版本等。对于mingw,您需要将正确的字段指向g++的位置,对于Qt版本,指向qmake的位置。


0

并不是总是最新版本就是最好的。如果有人想学习Qt以实现生产解决方案,使用Qt5版本并不是一个好主意(请参阅Qt5更改日志)。如果您想学习Qt编程,我认为Nokia SDK是一个很好的起点,因为您只需要将其安装为另一个Windows软件,并开始编码。

使用Linux是另一个不错的起点,因为您只需几个apt-get命令就可以获得完整的开发环境。

当我开始编程Qt时,我花了很多时间来让QtCreator工作,在此期间我明白了并非每个人都有这样的时间。


这个回答以何种方式回应了楼主的问题? - pascalhein

0
我正在使用基于Qt 5.5.1的Qt Creator 3.5.1。每次我需要配置开发系统时,错误“未在工具包中设置编译器”都是一个问题。对我有效的解决方案是选择“工具/选项/编译器”并添加一个编译器。在我的情况下,是一个名为g++的GCC编译器,编译器路径为/usr/bin/g++。诀窍是在尝试添加套件之前添加编译器。如果我在添加编译器之前添加套件,我将无法将编译器添加到套件中。如果您遇到此问题,请删除套件,添加编译器,然后再添加套件。

-2
在您的问题中,您必须提供更多关于您的问题的信息,例如您正在使用哪些软件版本。
关于您的问题,我认为对于您(作为初学者)来说,使用全能QtSDK(link,需要注册)是一个非常好的主意。在QtSDK 1.2.1中有现成的QtCreator、MinGW和一些旧的Qt Libs。因此,您不需要进行任何配置。
希望这可以帮助到您。祝您好运!

他在谈论工具包,因此他可能正在使用Qt Creator 2.6.x。 (诺基亚) Qt SDK已经过时,并且包含了许多现在没有太大价值的东西(由诺基亚放弃的平台;-),所以我真的不建议使用它。 - Tobias Hunger
就我个人而言,并且正如我所推荐的那样,对于第一次尝试Qt来说,QtSDK是一个非常好的解决方案。 - tro
自从2.4.x版本(据我所知,这是SDK中的最后一个版本)以来,Creator变得更好了很多。它甚至在Qt 5上根本无法工作(你需要2.6.1才行)。当SDK在三月份发布时,人们抱怨mingw过时了。我希望随着时间的推移,Qt 5软件包将变得更加完整(例如,包括编译器和调试器等mingw版本,以及Qt和Qt Creator)。 - Tobias Hunger

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接