Difference between revisions of "CUPS"
(I added instructions for uncompressing the man pages. They are unfortunately quite long, but my attempts to use backslashes to put them on multiple lines failed.) |
m (Updated Download URL to cups.org where more recent stable source can be found) |
||
(22 intermediate revisions by 12 users not shown) | |||
Line 2: | Line 2: | ||
|-valign="top" | |-valign="top" | ||
!Download Source: | !Download Source: | ||
− | | http:// | + | | http://www.cups.org/software/{{CUPS-Version}}/cups-{{CUPS-Version}}-source.tar.bz2 |
|} | |} | ||
---- | ---- | ||
− | + | {{Package-Introduction|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.|http://www.cups.org/}} | |
− | + | {{Note|If you get "Unsuported format, application/postscript" errors, try installing Cups/Ghostscript/foomatic (if needed), then start cups.}} | |
== Dependencies == | == Dependencies == | ||
Line 17: | Line 17: | ||
* [[libpng]] | * [[libpng]] | ||
* [[LibTIFF]] | * [[LibTIFF]] | ||
+ | |||
=== Optional === | === Optional === | ||
* [[OpenSSL]] or [[GnuTLS]] | * [[OpenSSL]] or [[GnuTLS]] | ||
+ | * [[D-BUS]] | ||
* [[Linux-PAM]] | * [[Linux-PAM]] | ||
* [[PHP]] | * [[PHP]] | ||
Line 26: | Line 28: | ||
* [[libpaper]] | * [[libpaper]] | ||
* [[Valgrind]] | * [[Valgrind]] | ||
+ | * [[OpenLDAP]] | ||
+ | * [[acl]] | ||
− | == | + | == Configuration Information == |
− | + | {{Note|CUPS does not use ''DESTDIR'', CUPS uses ''BUILDROOT'' instead. Use ''BUILDROOT'' as you would normally use ''DESTDIR''.}} | |
− | == | + | == Creating the lp User == |
− | + | useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 10 lp | |
− | + | == Non-Multilib == | |
− | If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command: | + | If you utilize [[Linux-PAM]], you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command: |
sed -i -e "s@pam/pam@security/pam@g" \ | sed -i -e "s@pam/pam@security/pam@g" \ | ||
Line 49: | Line 53: | ||
Install the package | Install the package | ||
− | make install | + | make install && |
+ | rm -rfv /etc/rc.d/*/*cups | ||
− | CUPS' man pages are compressed. If want to | + | CUPS' man pages are compressed. If you want to uncompress them, use the following commands: |
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | ||
Line 58: | Line 63: | ||
gunzip -v /usr/share/man/man8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},lp{admin,info,move,c}}.8.gz | gunzip -v /usr/share/man/man8/{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 -sv accept.8 /usr/share/man/man8/reject.8 | ||
+ | ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8 | ||
− | + | If wanting to print to a Windows printer, pass this line to add smb support | |
− | + | ||
+ | ln -s `which smbspool` /usr/lib/cups/backend/smb | ||
== Multilib == | == Multilib == | ||
− | |||
− | |||
− | |||
− | |||
=== 32Bit === | === 32Bit === | ||
Line 85: | Line 90: | ||
make install && | make install && | ||
+ | rm -rfv /etc/rc.d/*/*cups && | ||
mv -v /usr/bin/cups-config{,-32} | mv -v /usr/bin/cups-config{,-32} | ||
+ | |||
+ | If wanting to print to a Windows printer, pass this line to add smb support (Untested) | ||
+ | |||
+ | ln -s `which smbspool` /usr/lib/cups/backend/smb | ||
=== N32 === | === N32 === | ||
Line 96: | Line 106: | ||
Compile the package: | Compile the package: | ||
+ | sed -i '/CUPS_SERVERBIN/s:/lib:&32:' configure && | ||
CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \ | CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \ | ||
--libdir=/usr/lib32 && | --libdir=/usr/lib32 && | ||
Line 103: | Line 114: | ||
make install && | make install && | ||
+ | rm -rfv /etc/rc.d/*/*cups && | ||
mv -v /usr/bin/cups-config{,-n32} | mv -v /usr/bin/cups-config{,-n32} | ||
+ | |||
+ | If wanting to print to a Windows printer, pass this line to add smb support | ||
+ | (Untested) | ||
+ | |||
+ | ln -s `which smbspool` /usr/lib32/cups/backend/smb | ||
=== 64Bit === | === 64Bit === | ||
Line 114: | Line 131: | ||
Compile the package: | Compile the package: | ||
+ | sed -i '/CUPS_SERVERBIN/s:/lib:&64:' configure && | ||
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \ | CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \ | ||
--libdir=/usr/lib64 && | --libdir=/usr/lib64 && | ||
Line 121: | Line 139: | ||
make install && | make install && | ||
+ | rm -rfv /etc/rc.d/*/*cups && | ||
mv -v /usr/bin/cups-config{,-64} && | mv -v /usr/bin/cups-config{,-64} && | ||
ln -sfv multiarch_wrapper /usr/bin/cups-config | ln -sfv multiarch_wrapper /usr/bin/cups-config | ||
− | CUPS' man pages are compressed. If want to uncompress them, use the following commands: | + | CUPS' man pages are compressed. If you want to uncompress them, use the following commands: |
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | ||
Line 135: | Line 154: | ||
ln -sv accept.8 /usr/share/man/man8/reject.8 | ln -sv accept.8 /usr/share/man/man8/reject.8 | ||
ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8 | ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8 | ||
+ | |||
+ | If wanting to print to a Windows printer, pass this line to add smb support | ||
+ | (Untested) | ||
+ | |||
+ | ln -s `which smbspool` /usr/lib64/cups/backend/smb | ||
== Configuring == | == Configuring == | ||
Line 140: | Line 164: | ||
=== BootScript === | === BootScript === | ||
− | Install the init script included in the [[ | + | Install the init script included in the [[bootscripts]] package. |
make install-cups | make install-cups | ||
+ | |||
+ | [[Category:Printing]] |
Latest revision as of 11:19, 5 October 2013
Download Source: | http://www.cups.org/software/1.6.4/cups-1.6.4-source.tar.bz2 |
---|
Contents
Introduction to CUPS
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.
Project Homepage: http://www.cups.org/
Dependencies
Required
Optional
Configuration Information
Creating the lp User
useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 10 lp
Non-Multilib
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \ {config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
./configure && make
Install the package
make install && rm -rfv /etc/rc.d/*/*cups
CUPS' man pages are compressed. If you want to uncompress them, use the following commands:
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz gunzip -v /usr/share/man/man7/{backend,filter}.7 gunzip -v /usr/share/man/man8/{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 -sv accept.8 /usr/share/man/man8/reject.8 ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8
If wanting to print to a Windows printer, pass this line to add smb support
ln -s `which smbspool` /usr/lib/cups/backend/smb
Multilib
32Bit
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \ {config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 ./configure \ --libdir=/usr/lib && make
Install the package
make install && rm -rfv /etc/rc.d/*/*cups && mv -v /usr/bin/cups-config{,-32}
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib/cups/backend/smb
N32
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \ {config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
sed -i '/CUPS_SERVERBIN/s:/lib:&32:' configure && CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \ --libdir=/usr/lib32 && make
Install the package
make install && rm -rfv /etc/rc.d/*/*cups && mv -v /usr/bin/cups-config{,-n32}
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib32/cups/backend/smb
64Bit
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \ {config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
sed -i '/CUPS_SERVERBIN/s:/lib:&64:' configure && CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \ --libdir=/usr/lib64 && make
Install the package
make install && rm -rfv /etc/rc.d/*/*cups && mv -v /usr/bin/cups-config{,-64} && ln -sfv multiarch_wrapper /usr/bin/cups-config
CUPS' man pages are compressed. If you want to uncompress them, use the following commands:
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz gunzip -v /usr/share/man/man7/{backend,filter}.7 gunzip -v /usr/share/man/man8/{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 -sv accept.8 /usr/share/man/man8/reject.8 ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib64/cups/backend/smb
Configuring
BootScript
Install the init script included in the bootscripts package.
make install-cups