Introduction to Poppler

The Poppler package contains a PDF rendering library and command line tools used to manipulate PDF files. This is useful for providing PDF rendering functionality as a shared library.

This package is known to build and work properly using an LFS-7.7 platform.

Package Information

  • Download (HTTP): http://poppler.freedesktop.org/poppler-0.31.0.tar.xz

  • Download MD5 sum: b631498668562ba47732785e54808468

  • Download size: 1.5 MB

  • Estimated disk space required: 163 MB (building Qt4 libraries, test suites, and poppler-data)

  • Estimated build time: 1.5 SBU (building Qt4 libraries and test suites)

Additional Downloads

Poppler Encoding Data

The additional package consists of encoding files for use with Poppler. The encoding files are optional and Poppler will automatically read them if they are present. When installed, they enable Poppler to render CJK and Cyrillic properly.

Poppler Dependencies





cURL-7.40.0, gobject-introspection-1.42.0, GTK-Doc-1.21, GTK+-2.24.26, Little CMS-1.19 or Little CMS-2.6, LibTIFF-4.0.3, OpenJPEG-2.1.0 (preference is for OpenJPEG1, due to regressions with OpenJPEG2), Qt-4.8.6 (the libpoppler-qt4.so library is needed for PDF support in Okular), and Qt-5.4.0

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/poppler

Installation of Poppler

In order to optionally run the test suite, an additional download of about 9 MB using git-2.3.0 is necessary. Make sure that you do not have the directory ../test.

rm -rf testfiles &&
git clone git://git.freedesktop.org/git/poppler/test testfiles


This package can be optionally built with support for either the Qt4 or Qt5 libraries, but it only builds with one of those at a time. If you have both Qt versions installed, you will need to specify which one to use before executing the configure command given below. Use this command to link to Qt4:

source /usr/bin/setqt4

or use this to use Qt5:

source /usr/bin/setqt5

If you would like Poppler to link to both Qt versions, you will need to build it twice.

Install Poppler by running the following commands:

./configure --prefix=/usr         \
            --sysconfdir=/etc     \
            --disable-static      \
            --enable-xpdf-headers \
            --with-testdatadir=$PWD/testfiles &&

To test the results, issue: LC_ALL=en_US.UTF-8 make check.

Now, as the root user:

make install

To install the documentation, run the following commands as root:

install -v -m755 -d        /usr/share/doc/poppler-0.31.0 &&
install -v -m644 README*   /usr/share/doc/poppler-0.31.0 &&
cp -vr glib/reference/html /usr/share/doc/poppler-0.31.0

Poppler Data

If you downloaded the additional encoding data package, install it by issuing the following commands as the root user:

tar -xf ../poppler-data-0.4.7.tar.gz &&
cd poppler-data-0.4.7

Now, as the root user:

make prefix=/usr install

Command Explanations

--disable-static: This switch prevents installation of static versions of the libraries.

--enable-xpdf-headers: Install some old Xpdf headers required by certain programs (e.g. Okular, LibreOffice and Inkscape).

--with-testdatadir=$PWD/testfiles: Tell the test programs where the auxillary files are located.

--enable-libcurl: Use libcurl for HTTP support.

--enable-gtk-doc: Use this parameter if GTK-Doc is installed and you wish to rebuild and install the API documentation.

LC_ALL=en_US.UTF-8 make check: Run the test suite. The environment variable LC_ALL=en_US.UTF-8 is only needed if the default locale does not include UTF-8.


Installed Programs: pdfdetach, pdffonts, pdfimages, pdfinfo, pdfseparate, pdftocairo, pdftohtml, pdftoppm, pdftops, pdftotext, pdfunite, and poppler-glib-demo
Installed Libraries: libpoppler.so, libpoppler-cpp.so, libpoppler-glib.so, libpoppler-qt4.so, and libpoppler-qt5.so
Installed Directories: /usr/include/poppler, /usr/share/doc/poppler-0.31.0, /usr/share/gtk-doc/html/poppler, and /usr/share/poppler

Short Descriptions


lists or extracts embedded files from PDF files.


lists the fonts used in a PDF file along with various information for each font.


saves images from a PDF file as PPM, PBM, or JPEG files.


prints the contents of the 'Info' dictionary (plus some other useful information) from a PDF file.


extracts single pages from a PDF file.


converts a PDF file to one of several formats (PNG, JPEG, PDF, PS, EPS, SVG) using the cairo output device of the poppler library.


converts a PDF file to HTML.


converts PDF files to PBM, PGM and PPM formats.


converts PDF files to Postscript format.


converts PDF files to plain text.


merges several PDF files, in the order of their occurrence on the command line, to one PDF output file.


is a tool to demonstrate the API, and for use when debugging and testing Poppler.


contains the API functions to render PDF files.


is a C++ backend for rendering PDF files.


is a wrapper library used to interface the PDF rendering functions with GTK+.


is a wrapper library used to interface the PDF rendering functions with Qt4.


is a wrapper library used to interface the PDF rendering functions with Qt5.

Last updated on 2015-02-24 17:21:19 -0800