1 INSTALL - CUPS v1.4b1 - 2008-10-10
2 ----------------------------------
4 This file describes how to compile and install CUPS from source
5 code. For more information on CUPS see the file called
6 "README.txt". A complete change log can be found in
9 **** IF YOU HAVE A NON-POSTSCRIPT PRINTER AND ARE NOT ****
10 **** RUNNING MAC OS X, YOU WILL ALSO NEED TO INSTALL GPL ****
11 **** GHOSTSCRIPT WITH THE "cups" DRIVER AFTER YOU INSTALL ****
17 You'll need ANSI-compliant C and C++ compilers, plus a make
18 program and Bourne shell. The GNU compiler tools work well -
19 we've tested the current CUPS code against several versions
20 of GCC with excellent results.
22 The makefiles used by the project should work with most
23 versions of make. We've tested them with GNU make as well as
24 the make programs shipped by Compaq, HP, SGI, and Sun.
25 BSD users should use GNU make (gmake) since BSD make does
26 not support "include".
28 Besides these tools you'll want the JPEG, PNG, TIFF, and ZLIB
29 libraries for image support, the CDSA, GNU TLS, or OpenSSL
30 libraries for encryption support, and the OpenLDAP and
31 OpenSLP libraries for directory services support. CUPS will
32 compile and run without these, however you'll miss out on
33 many of the features provided by CUPS.
35 Kerberos support requires MIT Kerberos 1.6.3 or later or
36 Heimdal Kerberos, along with the corresponding GSSAPI
39 Also, please note that CUPS no longer includes the
40 Ghostscript- based pstoraster filter. You *must* download
41 GPL Ghostscript separately from the CUPS web site if you want
42 to print PostScript files to non-PostScript printers on
43 operating systems other than Mac OS X.
46 COMPILING FROM SUBVERSION
48 The CUPS Subversion repository doesn't hold a copy of the
49 pre-built configure script. You'll need to run the GNU
50 autoconf software (2.60 or higher) before compiling the
51 software from Subversion:
58 CUPS uses GNU autoconf, so you should find the usual
59 "configure" script in the main CUPS source directory. To
60 configure CUPS for your system, type:
64 The default installation will put the CUPS software in the
65 "/etc", "/usr", and "/var" directories on your system, which
66 will overwrite any existing printing commands on your system.
67 Use the "--prefix" option to install the CUPS software in
70 ./configure --prefix=/some/directory
72 To see a complete list of configuration options, use the
77 If any of the dependent libraries are not installed in a
78 system default location (typically "/usr/include" and
79 "/usr/lib") you'll need to set the CFLAGS, CPPFLAGS,
80 CXXFLAGS, DSOFLAGS, and LDFLAGS environment variables prior
83 setenv CFLAGS "-I/some/directory"
84 setenv CPPFLAGS "-I/some/directory"
85 setenv CXXFLAGS "-I/some/directory"
86 setenv DSOFLAGS "-L/some/directory"
87 setenv LDFLAGS "-L/some/directory"
92 CFLAGS="-I/some/directory" \
93 CPPFLAGS="-I/some/directory" \
94 CXXFLAGS="-I/some/directory" \
95 DSOFLAGS="-L/some/directory" \
96 LDFLAGS="-L/some/directory" \
99 The "--enable-debug" option compiles CUPS with debugging enabled,
100 as well as support for debug logging via the CUPS_DEBUG_LOG
101 environment variable at run-time.
103 Once you have configured things, just type:
107 or if you have FreeBSD, NetBSD, or OpenBSD type:
111 to build the software.
114 INSTALLING THE SOFTWARE
116 Once you have built the software you need to install it. The
117 "install" target provides a quick way to install the software
118 on your local system:
122 or for FreeBSD, NetBSD, or OpenBSD:
126 You can also build binary packages that can be installed on
127 other machines using the RPM spec file
128 ("packaging/cups.spec") or EPM list file
129 ("packaging/cups.list"). The latter also supports building
130 of binary RPMs, so it may be more convenient to use - we use
131 EPM to build all of our binary distributions.
133 You can find the RPM software at:
137 The EPM software is available at:
139 http://www.easysw.com/epm/
142 CREATING BINARY DISTRIBUTIONS WITH EPM
144 The top level makefile supports generation of many types of binary
145 distributions using EPM. To build a binary distribution type:
153 for FreeBSD, NetBSD, and OpenBSD. The <format> target is one of
156 epm - Builds a script + tarfile package
157 aix - Builds an AIX package
158 bsd - Builds a *BSD package
159 deb - Builds a Debian package
160 depot - Builds a HP-UX package (also swinstall)
161 inst - Builds an IRIX package (also tardist)
162 osx - Builds a MacOS X package
163 pkg - Builds a Solaris package
164 rpm - Builds a RPM package
165 setld - Build a Tru64 UNIX package
166 slackware - Build a Slackware package
167 swinstall - Build a HP-UX package (also depot)
168 tardist - Builds an IRIX package (also inst)
171 GETTING DEBUG LOGGING FROM CUPS
173 When configured with the "--enable-debug" option, CUPS compiles
174 in additional debug logging support in the scheduler, CUPS API,
175 and CUPS Imaging API. Set the CUPS_DEBUG_LOG environment
176 variable to a filename to append logging information at run-time.
177 Use the name "-" to send the messages to stderr.
182 If you have problems, READ THE DOCUMENTATION FIRST! If the
183 documentation does not solve your problems, please post a
184 message on the "cups.general" forum at:
186 http://www.cups.org/newsgroups.php
188 Include your operating system and version, compiler and
189 version, and any errors or problems you've run into. The
190 "config.log" file and the output from the configure script
191 and make should also be sent, as it often helps to determine
192 the cause of your problem.
194 If you are running a version of Linux, be sure to provide the
195 Linux distribution you have, too.