Subject: | Failure installing Authen-Prot on HP 11.11 |
I am attempting to use your Perl module Authen_Prot-1.08.
The make of the module is failing on several points:
xsgen.pl does not understand the type int16_t and int32_t. Found in /usr/include/prot.h.
I tried adding the following subroutines to xsgen.pl
sub int16_t { return 'var = (short) SvIV(ST(1));' }
sub int32_t { return 'var = (int) SvIV(ST(1));' }
This gets by the first set of problems but now it gets the following messages:
cc -c -D_POSIX_C_SOURCE=199506L -D_REENTRANT -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings -DNO_HASH_SEED -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fast +Onolimit +Opromote_indirect_calls
+DAportable +DS2.0 -DVERSION=\"1.08\" -DXS_VERSION=\"1.08\" +Z
"-I/opt/perl/lib/5.8.2/PA-RISC1.1-thread-multi/CORE" -Dhpux Prot.c
cc: "/usr/include/sys/socket.h", line 504: warning 562: Redeclaration of "sendfile" with a different storage class specifier: "sendfile" will have internal linkage.
cc: "/usr/include/sys/socket.h", line 505: warning 562: Redeclaration of "sendpath" with a different storage class specifier: "sendpath" will have internal linkage.
cc: "xsgen.pl |", line 11: error 1588: "na" undefined.
cc: "xsgen.pl |", line 11: warning 563: Argument #3 is not the correct type.
cc: "xsgen.pl |", line 11: warning 527: Integral value implicitly converted to pointer in assignment.
cc: "xsgen.pl |", line 11: warning 563: Argument #4 is not the correct type.
cc: "xsgen.pl |", line 25: error 1588: "na" undefined.
cc: "xsgen.pl |", line 25: warning 563: Argument #3 is not the correct type.
cc: "xsgen.pl |", line 25: warning 527: Integral value implicitly converted to pointer in assignment.
cc: "xsgen.pl |", line 25: warning 563: Argument #4 is not the correct type.
These messages repeat several times them the make stops.
The machine is an HP rp7400 running HPUX 11i 64-bit. The Perl version is 5.8.2. And compiler is the HP ANSI-C.
enclosed is a copy of the /usr/include/prot.h file
Output of a uname -a
HP-UX w1hsyp01 B.11.11 U 9000/800 1616329336 unlimited-user license
/* @(#) $Revision: ../hdr/port.h@@/main/i80/0 $ */
#ifndef _PORT_INCLUDED /* allows multiple inclusions */
#define _PORT_INCLUDED
#ifdef __hp9000s300
/* This file encapsulates as many structures (and other information)
as possible to facilitate porting of code between various machines */
/* These constants really belong in cpp, not here */
#undef vax
#undef focus
#define chipmunk
#ifdef chipmunk
struct short_char {
char hi_byte;
char low_byte;
};
struct long_short {
short hi_short;
short low_short;
};
struct long_char {
char byte_0;
char byte_1;
char byte_2;
char byte_3;
};
#endif /* chipmunk */
#ifdef focus
struct short_char {
char hi_byte;
char low_byte;
};
struct long_short {
short hi_short;
short low_short;
};
struct long_char {
char byte_0;
char byte_1;
char byte_2;
char byte_3;
};
#endif /* focus */
#endif /* __hp9000s300 */
#endif /* _PORT_INCLUDED */