【发布时间】:2012-09-29 18:17:18
【问题描述】:
通常当我需要调试某些东西时,使用qDebug() 打印某些东西比使用调试器逐步调试更容易。
问题是有时qDebug() 的输出根本不显示!与qWarning 和qCritical 相同。奇怪的是,只有在正常运行项目(Ctrl+R)时才会出现,而在调试(F5)时会出现输出。
【问题讨论】:
标签: c++ qt qt-creator qdebug
通常当我需要调试某些东西时,使用qDebug() 打印某些东西比使用调试器逐步调试更容易。
问题是有时qDebug() 的输出根本不显示!与qWarning 和qCritical 相同。奇怪的是,只有在正常运行项目(Ctrl+R)时才会出现,而在调试(F5)时会出现输出。
【问题讨论】:
标签: c++ qt qt-creator qdebug
解决方法很简单:
将CONFIG += console 添加到您的 .pro 文件并重建整个项目。
【讨论】:
qDebug("test"); 并将 CONFIG += console 添加到我的 .pro 文件中。
我的解决方案,正如https://bugzilla.redhat.com/show_bug.cgi?id=1227295#c10 中所述:
/etc/xdg/QtProject/ 中寻找qtlogging.ini。qtlogging.ini,如果缺失)[Rules] *.debug=false
到
[Rules] *.debug=true qt.*.debug=false
【讨论】:
如果您正在运行 Qt Creator 的多个实例,qDebug 将无法正常工作。
【讨论】:
我使用这个问题的解决方案
Windows 10 Education
Qt Creator (5.x)
Developing a Qt widget.
问题:
所以我的问题是,每当我添加 QDebug 消息时,它并没有显示在应用程序输出中,尽管我的代码与教程中的代码 100% 相同并且编译良好。
解决方案:
右键单击添加QDebug 消息的文件,对我来说是main.cpp。单击构建。按底部的绿色箭头。
如果这仍然不起作用,请转到“Build”->“CleanAll”、“Build”->“qMake”并再次点击绿色箭头。
当然,您必须#include <QDebug> 并检查它在您的代码中是否拼写正确。
【讨论】:
我遇到了同样的问题,这里的答案都没有帮助我。我在这里找到了解决方案:https://lists.fedoraproject.org/archives/list/kde@lists.fedoraproject.org/thread/SB6QJZGVDLWWBZCMTNKMVZSSPPNREOYJ/
我必须设置 QT_ASSUME_STDERR_HAS_CONSOLE=1。这可以在代码中完成:
qputenv("QT_ASSUME_STDERR_HAS_CONSOLE", "1");
或者在“环境”下的“工具包”设置中更好。
【讨论】:
就我而言,不知何故我忘记点击“配置项目”。我正在使用 QTCreator 4.11 和 Qt5.14。当我创建项目时,我没有在创建过程接近尾声时点击“配置项目”。
【讨论】:
Qt5.14.2、QtCreator 4.12.0: 对我有用的是取消选择项目->运行->在终端中运行... 呵呵!
【讨论】: