如何解决 GTK 警告信息/如何在不重新安装所有内容的情况下恢复 Ubuntu 系统文件

如何解决 GTK 警告信息/如何在不重新安装所有内容的情况下恢复 Ubuntu 系统文件

我之所以问这个问题,是因为这个问题似乎对我正在使用的几个程序造成了重大问题。最初,这个问题源于我必须重新安装整个 Ubuntu Budgie 系统,因为一些配置保留了之前的 Zorin OS 安装(因为我只是重新挂载了 /home 而不是将其清除),而且我无法启动一个程序:AnyLogic。问题如下:在 Zorin OS 上安装了 Ubuntu 并保留了 /home,但可能保留了一些错误的配置

全新安装暂时解决了这个问题。不过,我注意到,如果在安装过程中 PC 上没有 libwebkitgtk-1.0-0,AnyLogic 会要求安装。好吧,没问题,我给了它权限,然后它就可以正常工作了。AnyLogic 工作了几天,没有出现问题。Steam 也正常工作,没有出现问题。

但是,我最近摆弄了 NVidia X Server,首先将其置于 NVidia On-Demand 模式,在 Lutris 中运行 Steam 和其他一些游戏,它们在英特尔显卡上运行,没有使用专用的 NVidia GPU,然后将其重新置于 NVidia Performance 模式。重启后,我尝试运行 steam,但它没有运行。尝试从 Ubuntu 软件商店重新安装它,然后从 Steam 网站重新安装它,但无济于事。Steam 在启动阶段检查更新时可以工作,但当它需要启动时 UI 会崩溃。

似乎这以某种方式破坏了 GTK 或 webkit(无论它是什么)。现在 Steam 和 AnyLogic 都不再工作,并且它们都发出 Gtk 警告消息。

例如,在控制台中启动 Steam 会出现以下错误消息:

已加载 SDL 版本 2.0.15-6379350 Gtk-Message:20:35:48.220:无法加载模块“appmenu-gtk-module” Gtk-Message:20:35:48.220:无法加载模块“gail” Gtk-Message:20:35:48.220:无法加载模块“atk-bridge”

(steam:12737): Gtk-WARNING **: 20:35:48.224: 无法在 module_path 中找到主题引擎:“adwaita”,

(steam:12737): Gtk-WARNING **: 20:35:48.225: 无法在 module_path 中找到主题引擎:“adwaita”,/usr/share/themes/Pocillo-dark-slim/gtk-2.0/main.rc:1090:错误:意外标识符“direction”,预期字符“}”/usr/share/themes/Pocillo-dark-slim/gtk-2.0/apps.rc:91:错误:意外标识符“direction”,预期字符“}”

(steam:12737): Gtk-WARNING **: 20:35:48.226: 无法在 module_path 中找到主题引擎:“adwaita”,libGL 错误:未找到匹配的 fbConfigs 或视觉效果 libGL 错误:无法加载驱动程序:swrast Steam:发生 X 错误 X 失败请求的错误:GLXBadContext 失败请求的主要操作码:152 失败请求的序列号:54 xerror_handler:X 失败,继续 Steam:发生 X 错误 X 失败请求的错误:BadValue(整数参数超出操作范围)失败请求的主要操作码:152 失败请求中的值:0x0 失败请求的序列号:53 xerror_handler:X 失败,继续 Steam:发生 X 错误 X 失败请求的错误:BadMatch(无效参数属性)失败请求的主要操作码:152 失败请求的序列号:55 xerror_handler:X 失败,继续assert_20210406203546_1.dmp[12806]: 上传转储(进程外)/tmp/dumps/assert_20210406203546_1.dmp /home/[user]/.local/share/Steam/steam.sh: 第 771 行:12737 分段错误(核心转储)$STEAM_DEBUGGER "$STEAMROOT/$STEAMEXEPATH" "$@"

启动 AnyLogic 可以正常工作,但随后它会冻结某些操作,甚至是一些非常简单的操作。以下是错误消息的两个示例:

(AnyLogic 8 个人学习版:10941):Gtk-WARNING **:20:29:17.639:gtk_widget_size_allocate():尝试分配宽度为 -1 且高度为 -1 的小部件

(AnyLogic 8 个人学习版:10941):Gtk-WARNING **:20:29:41.008:分配小工具(节点分隔符,所有者 GtkSeparatorToolItem)时内容宽度为负 -3(分配 1,范围 2x2)

(AnyLogic 8 个人学习版:10941):Gtk-WARNING **:20:29:41.009:分配小工具(节点按钮,所有者 GtkToggleButton)时内容高度为负 -7(分配 1,范围 4x4)

(AnyLogic 8 个人学习版:9861):Gtk-WARNING **:20:25:29.987:gtk_widget_size_allocate():尝试分配宽度为 -1 且高度为 -1 的小部件

(AnyLogic 8 个人学习版:9861):Gtk-CRITICAL **:20:25:33.081:gtk_box_gadget_distribute:断言‘size >= 0’在 GtkScrollbar 中失败

(AnyLogic 8 个人学习版:9861):Gtk-CRITICAL **:20:25:33.082:gtk_box_gadget_distribute:断言‘size >= 0’在 GtkScrollbar 中失败

(AnyLogic 8 个人学习版:9861):Gtk-WARNING **:20:25:54.331:分配小工具(节点分隔符,所有者 GtkSeparatorToolItem)时内容宽度为负 -3(分配 1,范围 2x2)

(AnyLogic 8 个人学习版:9861):Gtk-WARNING **:20:25:54.332:分配小工具(节点按钮,所有者 GtkToggleButton)时内容高度为负 -7(分配 1,范围 4x4)

奇怪的是,当我尝试在 AnyLogic 中加载特定示例项目时,如果我将程序窗口缩小一半,它就会加载。但是,当我尝试放大窗口时,它会冻结。似乎有一些 GTK UI 元素在缩小一半时不会显示,但在放大窗口时会显示并加载。

这一切都让我相信这是 Gtk 的问题。Steam 和 AnyLogic 的 UI 和窗口都存在问题。

现在,我的问题是,我该如何解决这个问题?我该如何恢复 Ubuntu Budgie 附带的原始库,但不重新安装所有内容?或者你有更好的主意?以某种方式重新安装/恢复 GTK??

谢谢

相关内容