解决 Fedora Linux 35 下 Qt 程序 qDebug() 无输出问题

解决 Fedora Linux 35 下 Qt 程序 qDebug() 无输出问题

最近电脑硬盘升级,富裕了不少空间。就装了个 Fedora linux。
说起来我也算是个 linux 的老用户了,最开始用还是 redhat 9.0 。之后基本上就只用 Fedora linux。我记得用的第一个版本是 Fedora Core 3,后来一直用到 Fedora 23。中间还用过几个国产的 linux 发行版,比如 magiclinux。也用过 ubantu 和 debian 。前几年因为工作太忙,就没有在用 linux 了。这次装上 Fedora 35,感觉界面和原来的 Fedora 23 还是差不多。有点跑题了,还是说说我遇到的问题。

一个简单的 Qt 程序,发现里面 qDebug() 全都没有输出。研究了一下午,发现是Fedora 打包 Qt 时缺了一个文件。

参考了网上的一些内容:
关于 qt qDebug() 无输出问题的解决方法
Red Hat Bugzilla – Bug 1227295

第一篇blog 中提到要添加一个配置文件 qtlogging.ini, 具体方法如下:

  touch ~/.config/QtProject/qtlogging.ini

我按照文章里的方法做了,但是还是没有输出。后来仔细读了读第二个网页。发现这个文件里面还要加几行:

[Rules]
*.debug=true
qt.*.debug=false

*.warning=true
*.critical=true

kscreen.*=true
; <EOF>

我试了一下,只要加了前三行,qDebug() 就能输出了。不过我建议还是都加上比较稳妥。

关于这个文件的作用,第二个网页里有比较详细的讨论。我就不多说了,大家可以看里面的介绍。

上一篇:5年内被辞退3次,35岁程序员该何去何从?百度,字节跳动历年Android中高级面试题全收录


下一篇:2021最新总结:1500页金三银四面试宝典 记录35轮大厂面试(都是面试重点