Unable to compile cups-1.1.20rc5 under HP-UX 11i #355

Closed
michaelrsweet opened this Issue Oct 26, 2003 · 3 comments

Comments

Projects
None yet
1 participant
Collaborator

michaelrsweet commented Oct 26, 2003

Version: 1.1.20rc5
CUPS.org User: unix-admin.m151.uklinux

Hi there,

Having a bit of trouble trying to compile CUPS - if nothing else, a pointer in the right direction would be most appreciated.

Unable to compile cups. Fails to make auth.c under scheduler (transcript at end of mail).

OS: HP-UX 11i
Compilers: HP ANSI C } + patches.
gcc 2.95.3 } both on PATH

Tried on two different systems, both running HP-UX 11i but built from different CDs. Both fail compilation at the same point.

Searches on the Internet haven't provided me with any clues as to what is happening here.

When I ran the configure script, it complained about shadow.h (though this is annoying, I don't know if this is causing my problem - I've included it for completeness):

checking shadow.h usability... no
checking shadow.h presence... yes
configure: WARNING: shadow.h: present but cannot be compiled
configure: WARNING: shadow.h: check for missing prerequisite headers?
configure: WARNING: shadow.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for shadow.h... yes

This is a little odd, as HP-UX as standard doesn't have shadow passwords. There has been a patch released fairly recently which does give you this, but it doesn't work with NIS or LDAP. Aside from that, HP offer C2 security - but thats different again, as it uses a sort of database under /tcb.

There is a shadow.h under /usr/include. This 'feature' has already been reported to bug-autoconf (or at least I found a submission - no replies yet).

When I run the make, I see:

make

Making all in cups...
Making all in backend...
Making all in berkeley...
Making all in cgi-bin...
Making all in filter...
Making all in man...
Making all in man/fr...
Making all in pdftops...
Making all in scheduler...
Compiling auth.c...
In file included from /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/string.h:6,
from ../cups/http.h:35,
from ../cups/http-private.h:46,
from cupsd.h:30,
from auth.c:56:
/usr/include/sys/stdsyms.h:37: warning: _INCLUDE_HPUX_SOURCE' redefined *Initialization*:1: warning: this is the location of the previous definition In file included from ../cups/string.h:36, from cupsd.h:31, from auth.c:56: /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/stdio.h:30: warning:__va__list' redefined
/opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/string.h:26: warning: this is the location of the previous definition
In file included from cupsd.h:32,
from auth.c:56:
/opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/stdlib.h:28: warning: __va__list' redefined /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/stdio.h:30: warning: this is the location of the previous definition In file included from /usr/include/xti.h:9, from /usr/include/rpc/rpc.h:51, from /usr/include/rpcsvc/nis.h:9, from /usr/include/prot.h:23, from /usr/include/shadow.h:9, from auth.c:61: /usr/include/sys/xti.h:503: warning:TCP_NODELAY' redefined
/usr/include/netinet/tcp.h:104: warning: this is the location of the previous definition
/usr/include/sys/xti.h:504: warning: TCP_MAXSEG' redefined /usr/include/netinet/tcp.h:108: warning: this is the location of the previous definition In file included from ../cups/http.h:35, from ../cups/http-private.h:46, from cupsd.h:30, from auth.c:56: /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/string.h:51: warning: conflicting types for built-in functionmemcmp'
/opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/string.h:116: warning: conflicting types for built-in function memcpy' /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/string.h:125: warning: conflicting types for built-in functionmemset'
In file included from /usr/include/sys/user.h:52,
from /opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/rpc/auth.h:21,
from /usr/include/rpc/rpc.h:61,
from /usr/include/rpcsvc/nis.h:9,
from /usr/include/prot.h:23,
from /usr/include/shadow.h:9,
from auth.c:61:
/usr/include/machine/sys/setjmp.h:45: redefinition of struct label_t' /usr/include/machine/sys/setjmp.h:59: warning: redefinition oflabel_t'
/opt/gcc/lib/gcc-lib/hppa2.0n-hp-hpux11.00/2.95.3/include/sys/types.h:369: warning: label_t' previously declared here auth.c: In functionIsAuthorized':
auth.c:1017: warning: assignment from incompatible pointer type
*** Error exit code 1

Stop.
*** Error exit code 1

Stop.

If I can be of assistance, I am happy to work with anyone there (I have test kit available) to help resolve this problem. If I can get this running under HP-UX 11i, I stand a good chance of persuading the company to go with CUPS as a printing solution for all of our UNIX systems. Its all working fine for our Linux systems, I just need to get the HPs talking to our Linux CUPS print server....

Thanks in advance for your time - keep up the good work!

Regards

Colin.

Collaborator

michaelrsweet commented Oct 26, 2003

CUPS.org User: unix-admin.m151.uklinux

Update for you.

I've upgraded to a later version of gcc and binutils (what a pain that was) and that has allowed me to compile OK (and I no longer get the shadow.h warning either):

gcc -v

Reading specs from /usr/local/lib/gcc-lib/hppa2.0w-hp-hpux11.11/3.3.2/specs
Configured with: /scratch/root/gcc-pkg/3.3.1/hpux-11/gcc-cvs/configure --enable-languages=c,c++ --enable-threads=posix --disable-nls --with-gnu-as --without-gnu-ld --with-as=/usr/local/bin/as --prefix=/usr/local
Thread model: posix
gcc version 3.3.2 20030829 (prerelease)

swlist -l product |grep -i binutils

binutils 2.14

Anyone needing these can get the relevant depots from HP.

However, it now fails on the make install:

make install

cp: illegal option -- d
Usage: cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file target_file
cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file ... target_directory
cp [-f|-i] [-p] [-S] -R|-r [-e warn|force|ignore] source_directory ... target_directory
cp: illegal option -- d
Usage: cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file target_file
cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file ... target_directory
cp [-f|-i] [-p] [-S] -R|-r [-e warn|force|ignore] source_directory ... target_directory
Installing in cups...
cp: illegal option -- d
Usage: cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file target_file
cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file ... target_directory
cp [-f|-i] [-p] [-S] -R|-r [-e warn|force|ignore] source_directory ... target_directory
rm: /usr/lib/ directory
cp: illegal option -- d
Usage: cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file target_file
cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file ... target_directory
cp [-f|-i] [-p] [-S] -R|-r [-e warn|force|ignore] source_directory ... target_directory
Installing in backend...
cp: illegal option -- d
Usage: cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file target_file
cp [-f|-i] [-p] [-S] [-e warn|force|ignore] source_file ... target_directory
cp [-f|-i] [-p] [-S] -R|-r [-e warn|force|ignore] source_directory ... target_directory
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
cp:/usr/lib/cups/: No such file or directory
strip: /usr/lib/cups/backend: cannot open
chmod: can't access /usr/lib/cups/backend
ln: /usr/lib/cups/backend/http: No such file or directory
*** Error exit code 1

Stop.
*** Error exit code 1

Stop.

Regards

Colin

Collaborator

michaelrsweet commented Oct 26, 2003

CUPS.org User: unix-admin.m151.uklinux

Another update.

Investigation found that this is assuming that I have GNU cp (which is a part of fileutils) - and of course I did not.

After alot more hassle and pain, I managed to get these compiled (FYI for those who have to go through this pain, to compile fileutils you'll need texinfo - specifically makeinfo).

I've changed the path to ensure cp is picked up from /usr/local/bin (even did a configure and make of CUPS again incase it stored this in a config file somewhere). It still fails to do the install, but now with a different error:

make install

/usr/local/bin/install: `/usr/include/cups' exists but is not a directory
*** Error exit code 1

Stop.
*** Error exit code 1

Stop.

which cp

/usr/local/bin/cp

I'll have to take a break and think about this - I'm no expert in make files!

Collaborator

michaelrsweet commented Oct 27, 2003

CUPS.org User: unix-admin.m151.uklinux

I've managed to side-step the issue and get CUPS working under HP-UX (though I still haven't worked out whats wrong with the make file).

I used EPM to generate a depot - luckily this takes the compiled binaries from the cups build directory, and sorts out where to install them. I just installed the depot, and everything was then in the right place!

So, if anyone needs to get this running urgently, I managed to get it running by:

  1. Upgrading gcc to 3.3.2
  2. Upgrading binutils to 2.14
  3. Downloading/building/installing EPM (had no problems with this).
  4. configure/make CUPS as per instructions
  5. do a 'make depot' instead of 'make install'
  6. swinstall <path_to_depot>/<depot_name>
    eg:
    swinstall -s /tmp/cups-1.1.20rc5/hpux-11.11-hppa/cups-1.1.20rc5-hpux-11.11-hppa.depot

It would be nice to sort out the make file though, but at least it works now!

Thanks everyone!

@michaelrsweet michaelrsweet added this to the Stable milestone Mar 17, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment