为什么来自 GTK+ 应用程序的控制台消息如此之多?

为什么来自 GTK+ 应用程序的控制台消息如此之多?

我尝试使用命令行打开软件中心

software-center

并且确实有效。我的意思是,软件中心打开了并且运行正常,但是,同时,我在终端窗口中看到很多奇怪的错误。怎么会这样?我很困惑。

对此有任何解释吗(以及解决方法)?我再说一遍,应用程序确实打开了,并且运行正常,只是背景中的线条显示有些地方不对劲。

以下是包含所有线条的屏幕截图。

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案1

之前已经有人问过非常相关的问题。以下是一些答案的链接:

我喜欢这个解释:

此类消息在 Gnome 应用程序中很常见,并不一定表示存在错误。Gnome 对用户采取了一种简化的方法;目标受众不会从终端运行应用程序,因此不会看到这些消息。如果您真的在意,请将 Gnome 应用程序的错误输出重定向到日志文件,否则重定向到 /dev/null。

来源:吉尔斯

这也很好:

此错误表示软件正在使用与较新版本的 GTK 库完全有效的 GTK 库调用。有时在软件开发过程中,希望摆脱“旧方法”,同时保持向后兼容性。这可以通过将不需要的调用标记为弃用来实现。这告诉开发人员他们的代码在此版本中完全有效,但将来他们的代码将需要更新才能与新版本的库一起使用,可能是未来的许多版本。

在这种情况下,GTK 希望更严格地包含尺寸单位。它告诉开发人员,GTK 假设单位是像素,这正是软件开发人员首先做出的假设。

来源:贝利

顺便说一句,如果你从终端启动 Firefox,你可能会看到如下可怕的消息:

GLib-CRITICAL **: g_slice_set_config: assertion

但根据评论,这似乎是无害的错误 #833117

简而言之,我们初学者大多不需要从终端启动基于 GUI 的应用程序,除非出现问题并且我们需要将输出提供给能够理解此类输出含义的人。

答案2

当然,您在终端中看到的是发给开发人员的消息。因此您有两个选择,要么忽略它们,要么打开应用程序而不看到它们。

要执行第二个选项,请在命令行中尝试以下操作:

nohup software-center &

它将打开应用程序并返回到终端,没有任何垃圾

答案3

您看到打印到控制台的消息不一定是错误。您的屏幕截图中的大多数消息实际上只是信息或警告。有关主题处理的警告是由于您使用的 GTK+ 主题。它们不是致命的,但它们确实需要由主题制作者修复,如果不修复它们,它们将来可能会引起更大的问题。

实际上来自应用程序的一些警告software-center只是信息而已。

通常,可以安全地忽略这些警告和信息消息。

相关内容