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输出信息之外的内容打印在终端上。