INSTALL - OpenPrinting libcupsfilters v2.0b2 - 2023-01-08
---------------------------------------------------------

This file describes how to compile and install libcupsfilters from
source code. For more information on libcupsfilters see the file
called "README.md". A complete change log can be found in
"CHANGES.md".

**** IF YOU HAVE A NON-PDF PRINTER AND ARE NOT              ****
**** RUNNING MAC OS X, YOU WILL ALSO NEED TO INSTALL        ****
**** GHOSTSCRIPT WITH AT LEAST THE "cups", "pwgraster",     ****
**** "appleraster", "urf", "pclm", "pclm8", "pdfwrite",     ****
**** "pdfimage24", "pdfimage32", "pdfimage8" DRIVERS AFTER  ****
**** YOU INSTALL CUPS AND BEFORE YOU INSTALL THIS PACKAGE.  ****


BEFORE YOU BEGIN

    You'll need ANSI-compliant C and C++ compilers, plus a make
    program and POSIX-compliant shell (/bin/sh).  The GNU compiler
    tools and Bash work well and we have tested the current CUPS code
    against several versions of GCC with excellent results.

    The Makefiles used by the project should work with most versions
    of make.  We've tested them with GNU make as well as the make
    programs shipped by Compaq, HP, SGI, and Sun.  BSD users should
    use GNU make (gmake) since BSD make does not support "include".

    Poppler, freetype, fontconfig, liblcms (liblcms2 recommended), and
    QPDF must be installed to be able to compile this package.

    Note that Poppler has to be compiled with the
    "--enable-poppler-cpp" configure option (or the
    "libpoppler-cpp-dev(el)" package has to be installed if the
    Poppler packages from a Linux distribution are used).

    Besides these tools you'll want the JPEG, PNG, TIFF, ZLIB, and
    EXIF libraries for image support. libcupsfilters will compile and
    run without these, however you'll miss out on many of the features
    provided by libcupsfilters.

COMPILING THE GIT REPOSITORY CODE

    The libcupsfilters GIT repository doesn't hold a copy of the
    pre-built configure script.  You'll need to run the GNU autoconf
    software (2.65 or higher) to create it:

        ./autogen.sh


CONFIGURATION

    libcupsfilters uses GNU autoconf, so you should find the usual
    "configure" script in the main libcupsfilters source directory.
    To configure libcupsfilters for your system, type:

	./configure

    The default installation will put the libcupsfilters software in
    the "/usr" directories on your system.

    Use the "--prefix" option to install the libcupsfilters software
    in another location:

	./configure --prefix=/some/directory

    To see a complete list of configuration options, use the --help option:

        ./configure --help

    If any of the dependent libraries are not installed in a system default
    location (typically "/usr/include" and "/usr/lib") you'll need to set the
    CFLAGS, CPPFLAGS, CXXFLAGS, DSOFLAGS, and LDFLAGS environment variables
    prior to running configure:

	setenv CFLAGS "-I/some/directory"
	setenv CPPFLAGS "-I/some/directory"
	setenv CXXFLAGS "-I/some/directory"
	setenv DSOFLAGS "-L/some/directory"
	setenv LDFLAGS "-L/some/directory"
	./configure ...

    or:

	CFLAGS="-I/some/directory" \
	CPPFLAGS="-I/some/directory" \
	CXXFLAGS="-I/some/directory" \
	DSOFLAGS="-L/some/directory" \
	LDFLAGS="-L/some/directory" \
	./configure ...

    Once you have configured things, just type:

	make ENTER

    or if you have FreeBSD, NetBSD, or OpenBSD type:

	gmake ENTER

    to build the software.


INSTALLING THE SOFTWARE

    Once you have built the software you need to install it.  The "install"
    target provides a quick way to install the software on your local system:

	make install ENTER

    or for FreeBSD, NetBSD, or OpenBSD:

	gmake install ENTER

PACKAGING THE SOFTWARE FOR OPERATING SYSTEM DISTRIBUTIONS

    The use of libcupsfilters is supported for CUPS from version
    2.2.2. For earlier CUPS versions (1.5.x, required since 1.6.x) use
    cups-filters 1.x.

