本文给出在Deepin 20.1系统中qDebug()没有输出的修复方案,包括相关问题的讨论。
问题 检查环境变量:export -p 发现有一行是QT_LOGGING_RULES="*.debug=false",或者Qt Creator的帮助菜单的System Infomation,Qt Creator里面有个System Information检查环境变量,如下图:
解决方案 用管理员身份打开/etc/X11/Xsession.d/00deepin-dde-env,用#注释QT_LOGGING_RULES="*.debug=false",然后注销。 需要注意的是,深度编辑器因文件类型限制无法打开这个文件。
附:用户估计 估计是为了避免各种应用的大量qDebug输出冲刷日志所以进行了全局屏蔽。
附:相关讨论参考 用std::cout每次都要把QString转换成std::string,自从Deepin 20.1 1003开始qDebug()就已经没有输出了,这时可看下/etc/X11/Xsession.d/00deepin-dde-env,其中QT_LOGGING_RULES="*.debug=true"的话,所有的qtdebug日志就会打印,得把这一行注释掉,然后在重启即可。
注:搜一下https://github.com/linuxdeepin,就会发现大量的qdebug以及标准的log模块使用,本质都是输入输出流。
相关主题 |