web-dev-qa-db-ja.com

wkhtmltopdfの実行エラー-(共有ライブラリのロード中のエラー)

アプリを実行すると(またはコマンドラインから実行すると)wkhtmltopdfコマンドを実行すると、次のエラーが表示されます:(コマンドラインから表示)

#> wkhtmltopdf 
wkhtmltopdf: error while loading shared libraries: libXrender.so.1: cannot open shared object file: No such file or directory

Libが実際に/usr/libフォルダ。ただし、/libフォルダー。これらのどれが含まれているかは重要ですか?それを認識させる方法はありますか?

#> ls -l /usr/lib/libXrender.so*
lrwxrwxrwx 1 root root    19 Feb 17 07:20 /usr/lib/libXrender.so -> libXrender.so.1.3.0
lrwxrwxrwx 1 root root    19 Feb 17 07:20 /usr/lib/libXrender.so.1 -> libXrender.so.1.3.0
-rwxr-xr-x 1 root root 39184 Jan 29  2010 /usr/lib/libXrender.so.1.3.0

#> ls -l /lib/libXrender.so*
ls: cannot access /lib/libXrender.so*: No such file or directory

ライブラリの依存関係も確認しました

# ldd /usr/lib/libXrender.so.1
    libX11.so.6 => /usr/lib/libX11.so.6 (0x00002b9cb5afd000)
    libc.so.6 => /lib/libc.so.6 (0x00002b9cb5e04000)
    libXau.so.6 => /usr/lib/libXau.so.6 (0x00002b9cb6143000)
    libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00002b9cb6347000)
    libdl.so.2 => /lib/libdl.so.2 (0x00002b9cb654d000)
    /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)

これはEngineYard gentooサーバーで実行されています

49
Ben

Unixパッケージx11-libs/libXextおよびx11-libs/libXrenderは依存関係です

Gentoo:

Sudo emerge libXext libXrender

PDFkit wikiでは、エンジンヤードでwkhtmltopdfを機能させる方法についても詳しく説明しています。 PDFkit wiki

DebianまたはUbuntu:

Sudo apt-get install libxrender1

お役に立てれば

118
David Barlow

Debian Squeeze、AMD64でも同じ問題がありました。 libxrender1をインストールすると、問題が解決しました。

Sudo apt-get install libxrender1
32
contact920

私も後にする必要があります:

Sudo apt-get install libfontconfig1
29
GKislin

今日、wkhtmltopdfの 静的バージョン を実行しているRHEL7マシンでこれを試してみてください。解決策は、いくつかの依存関係をインストールすることでした:

yum install libXrender libXext fontconfig 
8
a coder

システムが64ビットで、ソフトウェアに32ビットライブラリが必要な場合、フラグ「i386」を追加する必要があります。

たとえば、ubuntuの場合:

Sudo apt-get install libxrender1:i386
6
风间月

私はまったく同じ問題を抱えていました!私にとっての解決策は、wkhtmltoimageの64ビットバージョンをインストールすることでした。

4
André

Ubuntu 16(新規Dockerインストールから):

apt install -y libxrender1 libxext6

3
Thomas Decaux

Sudo apt-get install xvfb

依存関係パッケージをインストールします。

Node-modules wkhtmltopdf index.jsを更新します

wkhtmltopdf.command = 'wkhtmltopdf'; to 'wkhtmltopdf.command =' xvfb-run wkhtmltopdf ';'

1
kishore

UPX圧縮形式で配布されるwkhtmltopdfの実行可能バージョンがあり、lddとfileは、ペイロードに共有ライブラリが必要であっても、このファイルが静的にリンクされていることを報告します。

試してみる

文字列| fgrep UPX

「UPX」ID文字列が表示される場合は、upxをインストールし、ファイルのコピーで「upx -d」を使用して(upxが適切に機能するため)、非圧縮ファイルに対してlddを実行します。

0
Micheál Lunny