Thursday, April 26, 2007

Installing Cups on HP-UX

Important Note: Installing CUPS on HP-UX will overwrite important files. I was not aware that swremove did not restore the previous binaries. Make sure you make a backup of the lp basic back-end or are able to re-install the package from the install medium. I do not have access to an HP-UX machine and cannot help anyone with more than what is written here.

Guide to installing Cups on HP-UX
(copied here for future reference, and for anyone on the net who needs this information)
Taken from several sources on the net, with the official one being:
http://www.cups.org/doc-1.1/sam.html#BUILDING_INSTALLING

CUPS is supposed to be the "Common Unix printing system". It compiled on all the Unix platforms I ever worked on, although sometimes I thing it should be renamed CLiPS ("Common Linux printing system")

Important note: the guide does not include the Foomatic-rip filters and is therefore very limited in functionalities. To install the Foomatic filters once you have completed this guide see:
http://en.wikipedia.org/wiki/Foomatic and http://www.linux-foundation.org/en/OpenPrinting/Database/Foomatic

1)The Basics
We'll build from source, so you need to have the latest compiler and makefile Gnu tools. (at minimum GNU make is required) You can get those from:
http://hpux.connect.org.uk/
http://hpux.connect.org.uk/hppd/hpux/Gnu/make-3.81/
http://hpux.connect.org.uk/hppd/hpux/Gnu/gcc-4.1.2/
And the run-time dependencies (for GCC):
http://hpux.connect.org.uk/hppd/hpux/Gnu/gettext-0.16.1/
http://hpux.connect.org.uk/hppd/hpux/Development/Libraries/libiconv-1.11/

You also need some libraries from for Jpeg, tiff, png and zlib support (theses are used at CUPS compile time)
http://hpux.connect.org.uk/hppd/hpux/X11/Graphics/jpeg-6b/
http://hpux.connect.org.uk/hppd/hpux/X11/Graphics/tiff-3.8.2/
http://hpux.connect.org.uk/hppd/hpux/X11/Graphics/libpng-1.2.16/
http://hpux.connect.org.uk/hppd/hpux/Misc/zlib-1.2.3/

once copied, install using (do this for each file):

swinstall -s /tmp/filename-version-0.1.depot \*

you might want to copy all the software into a depot, and install from there:

swcopy -s /tmp/filename-version-0.1.depot \* @ hostA:/tmp/sw
swinstall -s hostA:/tmp/sw


2)EPM
You'll want to make packages for the HP software depot(or maybe another package in case you to install it on something else). We'll use EPM, the package-builder from ESP, the company behind Cups.

EPM support the following packages type (from the makefile):
aix, bsd, deb, gui, inst tardist, pkg, native, osx, portable, rpm, swintall depot
And the website says it support the following OS:
AIX, Debian GNU/Linux, FreeBSD, HP-UX, IRIX, Mac OS X, NetBSD, OpenBSD, Red Hat Linux, Slackware Linux, Solaris, and Tru64 UNIX.
http://www.easysw.com/epm/
Download the source from:
http://www.easysw.com/epm/software.php
and copy to /tmp
Extract using:
gunzip epm-4.0-source.tar.gz
tar -xvf epm-4.0-source.tar

Compile:
cd /tmp/epm-4.0
./compile
gmake swinstall depot

This will make a .depot file in the hpux-version directory. Install this software using

gunzip /tmp/epm-4.0/hpux-11.11-hppa/epm-4.0-hpux-11.11-hppa.depot.gz
swinstall -s /tmp/epm-4.0/hpux-11.11-hppa/epm-4.0-hpux-11.11-hppa.depot \*

Again, you might want to copy it first:
gunzip /tmp/epm-4.0/hpux-11.11-hppa/epm-4.0-hpux-11.11-hppa.depot.gz
swcopy -s /tmp/epm-4.0/hpux-11.11-hppa/epm-4.0-hpux-11.11-hppa.depot \* @ hostA:/tmp/sw
swinstall -s hostA:/tmp/sw

3)CUPS
Get cups
http://www.easysw.com/cups/software.php

and copy to /tmp
Extract using:
gunzip cups-1.2.8.tar.gz
tar -xvf cups-1.2.8.tar

Compile
cd /tmp/cups-1.2.8
./configure
gmake depot

If it does find the Jpeg, Zlib, Tiff or Png Librairies, see:
http://www.cups.org/doc-1.1/sam.html#BUILDING_INSTALLING

Install
gunzip /tmp/cups-1.2.8/dist/cups-1.2.8-hpux-11.11-hppa.depot.gz
swinstall -s /tmp/cups-1.2.8/dist/cups-1.2.8-hpux-11.11-hppa.depot \*

or
gunzip /tmp/cups-1.2.8/dist/cups-1.2.8-hpux-11.11-hppa.depot.gz
swcopy -s /tmp/cups-1.2.8/dist/cups-1.2.8-hpux-11.11-hppa.depot \* @ hostA:/tmp/sw
swinstall -s hostA:/tmp/sw

Congratulation, you have a basic (almost nothing included) working Cups!

4)Finishing touch
Configuration files are in:
/etc/cups
Logs are in
/var/log/cups

To add a printer:
lpadmin -p printer -E -v device -m ppd_file
To add a printer using the old system V interface files:
lpadmin -i/path_to_file/file

2 comments:

Anonymous said...

Hello, I followed all the steps and get to compile and generate an installer, but when trying to remove cups with swremove command, previsous executables of systemv were not restored:
/> lpadmin
sh: lpadmin: not found.
/> lpstat
sh: lpstat: not found.
The installer overwrites the files and not the restore when cups are removed.

VE2DMN said...

"The installer overwrites the files and not the restore when cups are removed."

Hum. I did not realize that.