This chapter contains spooling printer management systems and ghostscript applications to render PostScript for display on terminals or paper.
The Common Unix Printing System (CUPS) is a print spooler and associated utilities. It is based on the "Internet Printing Protocol" and provides printing services to most PostScript and raster printers.
Download (HTTP): http://ftp2.easysw.com/pub/cups/1.2.7/cups-1.2.7-source.tar.bz2
Download (FTP): ftp://ftp3.easysw.com/pub/cups/1.2.7/cups-1.2.7-source.tar.bz2
Download MD5 sum: bf44783d9b46130bee9f2995e6055470
Download size: 3.5 MB
Estimated disk space required: 55 MB
Estimated build time: 0.6 SBU
libjpeg-6b, libpng-1.2.12, and LibTIFF-3.8.2
pkg-config-0.20, D-BUS-0.62, OpenLDAP-2.3.27, OpenSSL-0.9.8d or GnuTLS (which needs libgpg-error, libgcrypt and opencdk, in that order), Linux-PAM-0.99.4.0, PHP-5.1.4, Python-2.4.4, JDK-1.5.0_10, OpenSLP, libpaper, libacl (requires libattr), HTMLDOC, and Valgrind (optionally used if running the test suites)
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/cups
Create an lp user, as CUPS will create some files owned by this user. (The lp user is the default used by CUPS, but may be changed to a different user by passing a parameter to the configure script.) Use the following command as the root user:
useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 9 lp
Install CUPS by running the following commands:
./configure && make
To test the results, issue: make check. This will run a basic test suite without any load testing. If you wish to run the tests specifying non-default parameters, issue: make test. Note that the “torture load testing” test uses more resources than those displayed in the prompt.
Now, as the root user:
make install
The man files are installed in compressed (.gz) format. If desired, use the following commands to uncompress them:
gunzip -v /usr/share/man/man{\ 1/{cancel,cups{-config,test{dsc,ppd}},\ lp{,options,passwd,q,rm,r,stat}}.1,\ 5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,\ mime.{convs,types}}.5,\ 7/{backend,filter}.7,\ 8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},\ lp{admin,info,move,c}}.8}.gz && rm -v /usr/share/man/man8/{reject,cupsdisable}.8.gz && ln -v -s accept.8 /usr/share/man/man8/reject.8 && ln -v -s cupsenable.8 /usr/share/man/man8/cupsdisable.8
The basic default behavior of the installation is appropriate for LFS systems. CUPS files are placed in /usr/bin, /usr/sbin, /var and /etc/cups.
Configuration of CUPS is dependent on the type of printer and can be complex. Generally, PostScript printers are easier. For detailed instructions on configuration and use of CUPS, see http://www.cups.org/documentation.php. The Software Administrators Manual and Software Users Manual are particularly useful.
For non-PostScript printers to print with CUPS, you need to install ESP Ghostscript-8.15.2 to convert PostScript to raster images and a driver (e.g., from Gimp-Print-4.2.7) to convert the resulting raster images to a form that the printer understands. Foomatic drivers use Ghostscript to convert PostScript to a printable form directly, but this is considered to be a hack by CUPS developers.
During the installation, CUPS added startup files in /etc/rc.d. These scripts will work in most cases, but will fail if you provide printers to Samba clients. Additionally, they are not consistent with standard LFS style scripts. Replace the installed scripts with the scripts and symlinks included in the blfs-bootscripts-20060910 package:
make install-cups
Last updated on 2007-01-28 11:43:31 -0600