firefox - Firefox 无法打开“libgtk-3.so.0”。如何规避?
问题描述
我有两个 CentOS 虚拟机,它们使用 Jenkins 通过 Firefox 运行自动化测试。两者都安装了Firefox。两个版本的 firefox 相同(firefox-56.0.1)。我不知道它们是 x86_64 还是其他类型,但无论它们是什么,它们都是相同的。(我使用的是相同的 .tar.bz2 文件。我将它从一个实例复制到另一个实例。)
在一种情况下,我可以运行 Firefox。“firefox --headless”返回“***您正在以无头模式运行。”
将 .tar.bz2 文件复制到另一个实例并安装 firefox 后,我发现新实例没有相同的性能。“firefox --headless”返回以下内容:
XPCOMGlueLoad error for file /usr/local/firefox/libmozgtk.so:
libgtk-3.so.0: cannot open shared object file: No such file or directory
Couldn't load XPCOM.
什么可以解释这种差异?看来我一开始就做对了,但我不知道是什么。是否有一些设置会阻止 Firefox 尝试使用“libgtk-3.so.0”文件?该文件在任一实例上都不存在。
我在其他地方看到过这个问题,但答案似乎集中在版本上(我知道我的版本在第一个实例中有效)和一个已积压的特定错误(这个错误只在新实例中困扰我)。
解决方案
问完问题几分钟后问题就解决了。
只需运行:
yum info gtk3
检查是否安装了gtk3。如果不:
yum install gtk3
我的旧实例安装了 gtk3 版本 3.22.10。我的新实例具有相同的可用但未安装。我不记得在任何无头运行 firefox 的指南中看到过这一点,但我最初认为不值得检查的搜索结果能够相当快地解决这个问题。感谢https://forums.fedoraforum.org/showthread.php?310652-Udating-Firefox-fedora-19上的人们
对于 Ubuntu 或 Debian 发行版,请使用:
apt-get install packagekit-gtk3-module
推荐阅读
- c# - 将控制台窗口输出发送到不和谐通道
- selenium-webdriver - 量角器:如何捕获 webdriver 初始化错误
- selenium - 一次登录注销操作执行自动化多个测试用例好不好?
- asp.net - 错误:在 Asp.Net 中使用 Directory.GetDirectories 函数“找不到路径的一部分”
- javascript - 日期时间值未显示
- sql-server - 存储过程为每一行显示相同的值
- sql - 从列列表中删除选择子查询到主查询
- php - 带有中继器的嵌套选项卡 - 高级自定义字段 Wordpress
- javascript - Symfony 3.3 中的图像裁剪代码在 localhost 中运行良好,但在实时网站中不起作用
- c++ - 二进制排序树不会编译