wkhtmltopdf: cannot connect to X server
Solution 1:
or try this (from http://drupal.org/node/870058)
-
Download wkhtmltopdf. Or better install it with a package manager:
sudo apt-get install wkhtmltopdf
Extract it and move it to
/usr/local/bin/
- Rename it to
wkhtmltopdf
so that now you have an executable at/usr/local/bin/wkhtmltopdf
- Set permissions:
sudo chmod a+x /usr/local/bin/wkhtmltopdf
-
Install required support packages.
sudo apt-get install openssl build-essential xorg libssl-dev
-
Check to see if it works: run
/usr/local/bin/wkhtmltopdf http://www.google.com test.pdf
If it works, then you are done. If you get the error "Cannot connect to X server" then continue to number 7.
-
We need to run it headless on a 'virtual' x server. We will do this with a package called xvfb.
sudo apt-get install xvfb
-
We need to write a little shell script to wrap wkhtmltopdf in xvfb. Make a file called
wkhtmltopdf.sh
and add the following:xvfb-run -a -s "-screen 0 640x480x16" wkhtmltopdf "$@"
-
Move this shell script to
/usr/local/bin
, and set permissions:sudo chmod a+x /usr/local/bin/wkhtmltopdf.sh
-
Check to see if it works once again: run
/usr/local/bin/wkhtmltopdf.sh http://www.google.com test.pdf
Note that http://www.google.com may throw an error like "A finished ResourceObject received a loading finished signal. This might be an indication of an iframe taking to long to load." You may want to test with a simpler page like http://www.example.com
.
Solution 2:
This solved the issue for me:
sudo apt-get install xvfb
xvfb-run --server-args="-screen 0, 1024x768x24" wkhtmltopdf file1.html file2.pdf
Solution 3:
I tried to do sudo apt-get install wkhtmltopdf
but without any success.
Instead I recommend you try:
-
Download the latest executable (.11 rc1) :
wget https://wkhtmltopdf.googlecode.com/files/wkhtmltopdf-0.11.0_rc1-static-i386.tar.bz2
-
uncompress it :
tar -vxf wkhtmltopdf-0.11.0_rc1-static-i386.tar.bz2
-
rename it :
mv wkhtmltopdf-i386 wkhtmltopdf
-
chmod it to executable :
chmod a+x wkhtmltopdf
-
place it into /usr/bin :
sudo mv wkhtmltopdf /usr/bin
Solution 4:
Just made it:
1- To download wkhtmltopdf dependencies
# apt-get install wkhtmltopdf
2- Download from source
# wget http://downloads.sourceforge.net/project/wkhtmltopdf/xxx.deb
# dpkg -i xxx.deb
3- Try
# wkhtmltopdf http://google.com google.pdf
Its working fine
It works!
Solution 5:
I found method to resolve this problem without fake X server. In newest version of wkhtmltopdf dont need X server for work, but it no into official linux repositories.
Solution for Ubuntu 14.04.4 LTS (trusty) i386
$ sudo apt-get install xfonts-75dpi
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2/wkhtmltox-0.12.2_linux-trusty-i386.deb
$ sudo dpkg -i wkhtmltox-0.12.2_linux-trusty-i386.deb
$ wkhtmltopdf http://www.google.com test.pdf
Solution for Ubuntu 14.04.4 LTS (trusty) amd64
$ sudo apt-get install xfonts-75dpi
$ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.2/wkhtmltox-0.12.2_linux-trusty-amd64.deb
$ sudo dpkg -i wkhtmltox-0.12.2_linux-trusty-amd64.deb
$ wkhtmltopdf http://www.google.com test.pdf
User felixhummel got very good solution, but repository with utilite has changed.