Difference between revisions of "CUPS"

From CBLFS
Jump to navigationJump to search
(Formatting)
(added ln line for smb support)
Line 28: Line 28:
 
* [[libpaper]]
 
* [[libpaper]]
 
* [[Valgrind]]
 
* [[Valgrind]]
 +
* [[Samba]]
  
 
== Configuration Information ==
 
== Configuration Information ==
Line 65: Line 66:
 
   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
 +
 +
ln -s `which smbspool` /usr/lib/cups/backend/smb
  
 
== Multilib ==
 
== Multilib ==
Line 86: Line 91:
 
  rm -rfv /etc/rc.d/*/*cups &&
 
  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 105: Line 114:
 
  rm -rfv /etc/rc.d/*/*cups &&
 
  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 137: Line 151:
 
   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 ==

Revision as of 12:12, 8 March 2008

Download Source: http://downloads.sourceforge.net/cups/cups-1.6.4-source.tar.bz2

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: Unknown

Caution.png

Note

If you get "Unsuported format, application/postscript" errors, try installing Cups/Ghostscript/foomatic (if needed), then start cups.

Dependencies

Required

Optional

Configuration Information

Caution.png

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:

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:

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:

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