MuPDF-1.21.1

Introduction to MuPDF

MuPDF is a lightweight PDF and XPS viewer.

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

Package Information

MuPDF Dependencies

Required

GLU-9.0.2 and Xorg Libraries

Recommended

Optional

xdg-utils-1.1.3 (runtime), jbig2dec, and MuJS

Required (runtime)

a graphical environment

User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/mupdf

Installation of MuPDF

First, fix the Makefile to link properly with the shared library:

sed -i '/MU.*_EXE. :/{
        s/\(.(MUPDF_LIB)\)\(.*\)$/\2 | \1/
        N
        s/$/ -lmupdf -L$(OUT)/
        }' Makefile

Install MuPDF by running the following commands:

cat > user.make << EOF &&
USE_SYSTEM_FREETYPE := yes
USE_SYSTEM_HARFBUZZ := yes
USE_SYSTEM_JBIG2DEC := no
USE_SYSTEM_JPEGXR := no # not used without HAVE_JPEGXR
USE_SYSTEM_LCMS2 := no # need lcms2-art fork
USE_SYSTEM_LIBJPEG := yes
USE_SYSTEM_MUJS := no # build needs source anyway
USE_SYSTEM_OPENJPEG := yes
USE_SYSTEM_ZLIB := yes
USE_SYSTEM_GLUT := no # need freeglut2-art fork
USE_SYSTEM_CURL := yes
USE_SYSTEM_GUMBO := no
EOF

export XCFLAGS=-fPIC                               &&
make build=release shared=yes                      &&
unset XCFLAGS

This package does not come with a test suite.

Now, as the root user:

make prefix=/usr                        \
     shared=yes                         \
     docdir=/usr/share/doc/mupdf-1.21.1 \
     install                            &&

chmod 755 /usr/lib/libmupdf.so          &&
ln -sfv mupdf-x11 /usr/bin/mupdf

Command Explanations

ln -sfv mupdf-x11 /usr/bin/mupdf : This symbolic link chooses between mupdf-gl and mupdf-x11 when running mupdf.

Contents

Installed Program: mupdf (symlink), mupdf-gl, mupdf-x11, mupdf-x11-curl, muraster, and mutool
Installed Libraries: libmupdf.so
Installed Directories: /usr/include/mupdf, /usr/share/doc/mupdf-1.21.1

Short Descriptions

mupdf

is a program for viewing PDF, XPS, EPUB, and CBZ documents, and various image formats such as PNG, JPEG, GIFF, and TIFF

mupdf-gl

same as mupdf, using an opengl renderer

mupdf-x11

same as mupdf, using an X Window renderer

muraster

is a program used to perform rasterization tasks with PDF documents

mutool

is a program to perform various operations on PDF files, such as merging and cleaning PDF documents

libmupdf.so

contains the mupdf API functions