Poppler-0.79.0

#### Beyond Linux® From Scratch (systemd Edition) - Version 9.0

### Chapter 10. Graphics and Font Libraries

- Prev

  Pixman-0.38.4

- Next

  Potrace-1.15

- Up
- Home

# Poppler-0.79.0

## 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-9.0 platform.

### Package Information

- Download (HTTP): https://poppler.freedesktop.org/poppler-0.79.0.tar.xz

- Download MD5 sum: 0aac1fcb6466f8b7bdf51871264c7e83

- Download size: 1.5 MB

- Estimated disk space required: 64 MB (with Qt5 library and tests)

- Estimated build time: 0.8 SBU (with parallelism=4, Qt5 library, and tests)

### Additional Downloads

Poppler Encoding Data

- Download (HTTP): https://poppler.freedesktop.org/poppler-data-0.4.9.tar.gz

- Download MD5 sum: 35cc7beba00aa174631466f06732be40

- Download size: 4.1 MB

- Estimated disk space required: 13 MB

- Estimated build time: less than 0.1 SBU

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

#### Required

CMake-3.15.2 and Fontconfig-2.13.1

#### Recommended

Cairo-1.16.0, Little CMS-2.9, libjpeg-turbo-2.0.2, libpng-1.6.37, NSS-3.45, and OpenJPEG-2.3.1

#### Optional

cURL-7.65.3, gdk-pixbuf-2.38.1, git-2.23.0 (for downloading test files), gobject-introspection-1.60.2, GTK-Doc-1.32, GTK+-3.24.10, LibTIFF-4.0.10, Python-2.7.16, and Qt-5.13.0 (required for PDF support in Okular-19.08.0)

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

## Installation of Poppler

Install Poppler by running the following commands:

    mkdir build                         &&
    cd    build                         &&

    cmake  -DCMAKE_BUILD_TYPE=Release   \
           -DCMAKE_INSTALL_PREFIX=/usr  \
           -DTESTDATADIR=$PWD/testfiles \
           -DENABLE_UNSTABLE_API_ABI_HEADERS=ON     \
           ..                           &&
    make

In order to run the test suite, some testcases are needed and can be obtained only from a git repository. The command to download them is: git clone git://git.freedesktop.org/git/poppler/test testfiles. Then issue: LC_ALL=en_US.UTF-8 make test. Only the Qt5 libraries are tested.

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.79.0 &&
    cp -vr ../glib/reference/html /usr/share/doc/poppler-0.79.0

### Poppler Data

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

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

Now, as the `root` user:

    make prefix=/usr install

## Command Explanations

`-DCMAKE_BUILD_TYPE=Release`: This switch is used to apply a higher level of compiler optimizations.

`-DTESTDATADIR=$PWD/testfiles`: Tell the test programs where the auxiliary files are located.

`-DENABLE_UNSTABLE_API_ABI_HEADERS=ON`: Install some old Xpdf headers required by certain programs (e.g. Inkscape).

`-DENABLE_GTK_DOC=ON`: Use this parameter if GTK-Doc is installed and you wish to rebuild and install the API documentation. If Python 2 is not installed, one script needs to be changed: run sed -i '1s/python/&3/' make-glib-api-docs first.

LC_ALL=en_US.UTF-8 make test: 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.

## Contents

Installed Programs: pdfattach, pdfdetach, pdffonts, pdfimages, pdfinfo, pdfseparate, pdfsig, pdftocairo, pdftohtml, pdftoppm, pdftops, pdftotext, and pdfunite
Installed Libraries: libpoppler.so, libpoppler-cpp.so, libpoppler-glib.so, and libpoppler-qt5.so
Installed Directories: /usr/include/poppler, /usr/share/poppler, and /usr/share/doc/poppler-0.79.0

### Short Descriptions

pdfattach | adds a new embedded file to an existing PDF file.
pdfdetach | lists or extracts embedded files from PDF files.
pdffonts | lists the fonts used in a PDF file along with various information for each font.
pdfimages | saves images from a PDF file as PPM, PBM, or JPEG files.
pdfinfo | prints the contents of the 'Info' dictionary (plus some other useful information) from a PDF file.
pdfseparate | extracts single pages from a PDF file.
pdfsig | verifies the digital signatures in a PDF document.
pdftocairo | converts a PDF file to one of several formats (PNG, JPEG, PDF, PS, EPS, SVG) using the cairo output device of the poppler library.
pdftohtml | converts a PDF file to HTML.
pdftoppm | converts PDF files to PBM, PGM and PPM formats.
pdftops | converts PDF files to Postscript format.
pdftotext | converts PDF files to plain text.
pdfunite | merges several PDF files, in the order of their occurrence on the command line, to one PDF output file.
`libpoppler.so` | contains the API functions to render PDF files.
`libpoppler-cpp.so` | is a C++ backend for rendering PDF files.
`libpoppler-glib.so` | is a wrapper library used to interface the PDF rendering functions with GTK+.
`libpoppler-qt5.so` | is a wrapper library used to interface the PDF rendering functions with Qt5.

Last updated on 2019-08-19 11:11:15 -0700

- Prev

  Pixman-0.38.4

- Next

  Potrace-1.15

- Up
- Home