关于node.js:pupeteer启动出错

55次阅读

共计 1264 个字符,预计需要花费 4 分钟才能阅读完成。

景象

linux-686378/chrome-linux/chrome: error while loading shared libraries: libX11.so.6: cannot open shared object file: No such file or directory

通过下面信息显示,咱们的零碎短少启动 chorme 的库。

解决一

于是去搜寻装置 libX11.so.6 库,通过查找发现在不同 Linux 零碎上安装包的名字不一样,在 centOS 下我抉择了 libX11-devel 这个库。

解决二

装置完之后再次尝试启动,发现有报错,显示短少了另一个库 libXcomposite.so.1。预计后续还会短少其余库,这样一直尝试太麻烦了。好在找到了一个文档,下面介绍了查看短少那些库的办法,并且给出了零碎依赖库:https://github.com/puppeteer/…
在 chomme 程序文件夹里执行:

ldd | grep not

如果你是 Linux 零碎并且通过 npm i pupeteer装置的,在 node_modules/pupeteer/.local-chromium/linux-686378/chrome-linux/chrome 下运行,查看还短少哪些库。如下图:

最终解决方案

其实失去了短少的库也还是不晓得装什么库,因为零碎版本不同对应的库名字不同

  • 本人尝试间接装置显示的名字,发现并不好使⚠️。
  • 能够尝试应用文档给出的依赖装置,对于字体的不是必须的。(这个形式我没试过)

从网上查到了一个能够实操的装置:
ubuntu:

apt install gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget

centos:

yum -y install libX11 libXcomposite libXcursor libXdamage libXext libXi libXtst cups-libs libXScrnSaver libXrandr alsa-lib pango atk at-spi2-atk gtk3

如果须要 docker 装置的话,记得 dockerfile 中退出 –assume-yes 用于确认是否持续。

我的是 centOS, 装置之后胜利运行。

正文完
 0