cat writebug.cn/history

一个开发者的技术博客。

解决linux下Qt creator不显示qDebug输出

linux下Qt creator 不显示qDebug输出, 可以在qtcreator的.desktop文件添加环境变量。 env QT_ASSUME_STDERR_HAS_CONSOLE=1 qtcreator


源代码原编写于Windows系统中,迁移到Linux上后使用同一个qt工程文件进行编译,程序可以运行,但是无法输出QDebug信息。可能是Linux默认禁用了Qt的调试信息处理程序。

解决方案如下:

在主程序源代码添加

QLoggingCategory::defaultCategory()->setEnabled(QtDebugMsg, true);

相关的讨论如下:

https://forum.qt.io/topic/81430/unable-to-see-the-qdebug-messages-on-console/15

如果采用另一种方法,即在终端设置环境变量

export QT_LOGGING_RULES="*.debug=true"

那么会有大量诸如鼠标事件、界面状态等不属于QDebug输出信息之外的内容打印在终端上。