]> granicus.if.org Git - postgresql/blob - doc/FAQ_HPUX
Un-break plperl for non-set case.
[postgresql] / doc / FAQ_HPUX
1 =======================================================
2 Frequently Asked Questions (FAQ) for PostgreSQL 7.3
3 HP-UX Specific
4 TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
5 =======================================================
6 last updated:           $Date: 2004/09/02 17:46:24 $
7
8 current maintainer:     Tom Lane (tgl@sss.pgh.pa.us)
9 original author:        Tom Lane (tgl@sss.pgh.pa.us)
10
11
12 Questions covered here:
13 1.1)    What do I need to install PostgreSQL on HP-UX?
14 1.2)    Anything special about the build/install procedure?
15 1.3)    OK, it seemed to build and install, but the regression test fails.
16
17
18 ----------------------------------------------------------------------
19 Section 1:      Installing PostgreSQL
20 ----------------------------------------------------------------------
21
22 1.1)    What do I need to install PostgreSQL on HP-UX?
23
24 PostgreSQL 7.3 should work on Series 700/800 PA-RISC machines running
25 HP-UX 10.X or 11.X, given appropriate system patch levels and build
26 tools.  At least one developer routinely tests on HPUX 10.20 and we
27 have reports of successful installations on HPUX 11.00 and 11.11.
28
29 Aside from the PostgreSQL source distribution, you will need GNU make
30 (HP's make will not do), and either GNU gcc or HP's full ANSI C compiler.
31 If you intend to build from CVS sources rather than a distribution tarball,
32 you will also need flex (GNU lex) and bison (GNU yacc).
33
34 I'd also recommend making sure you are fairly up-to-date on HP
35 patches.  At a minimum, if you are building 64 bit binaries on on HPUX
36 11.11 you may need PHSS_30966 (11.11) or a successor patch otherwise
37 initdb may hang:
38
39     PHSS_30966  s700_800 ld(1) and linker tools cumulative patch
40
41 On general principles you should be current on libc and ld/dld
42 patches, as well as compiler patches if you are using HP's C compiler.
43 See HP's support sites such as http://itrc.hp.com and
44 ftp://us-ffs.external.hp.com/ for free copies of their latest patches.
45
46 If you are building on a PA-RISC 2.0 machine and want to have 64-bit
47 binaries using GCC, you must use GCC 64-bit version. GCC binaries for
48 HP-UX PA-RISC and Itanium are available from http://www.hp.com/go/gcc.
49 Don't forget to get and install binutils at the same time.
50
51 If you are building on a HP-UX Itanium machine, you will need the
52 latest HP ANSI C compiler with its dependent patch or successor
53 patches:
54
55     PHSS_30848  s700_800 HP C Compiler (A.05.57)
56     PHSS_30849  s700_800 u2comp/be/plugin library Patch
57
58 1.2)    Anything special about the build/install procedure?
59
60 If you have both HP's C compiler and GCC's, then you might want to
61 explicitly select the compiler to use when you run `configure':
62         ./configure CC=cc
63 for HP's C compiler, or
64         ./configure CC=gcc
65 for GCC.  If you omit this setting, then configure will pick gcc
66 if it has a choice.
67
68 The default install target location is /usr/local/pgsql, which
69 you might want to change to something under /opt.  If so, use
70 the --prefix switch to configure.
71
72 If you are building on a PA-RISC 2.0 machine and want the compiled
73 binaries to run on PA-RISC 1.1 machines you will need to specify
74 +DAportable in CFLAGS.
75
76
77 1.3)    OK, it seemed to build and install, but the regression test fails.
78
79 There are several "expected failures" due to differences between HPUX
80 and the regression test reference platform used by the PostgreSQL
81 group.  All of these should be compensated for by the regression test
82 comparison mechanism, with the possible exception of some
83 low-order-digit differences in the geometry tests, which vary depending
84 on which compiler and math library versions you use.
85
86 Any other error is cause for suspicion.
87
88 The parallel regression test script (gmake check) is known to lock up
89 on PA-RISC when run under HP's Bourne shells: /usr/bin/sh and
90 /sbin/sh. To fix this problem, you will need PHCO_30269 with its
91 dependent patch or successor patches:
92
93     PHCO_30269  s700_800 cumulative sh-posix(1) patch
94     PHCO_29816  s700_800 rc(1M) scripts cumulative patch 
95
96 To work around this problem, use ksh to run the regression script:
97
98         gmake SHELL=/bin/ksh check
99
100 If you see that the tests have stopped making progress and only a shell
101 process is consuming CPU, kill the shell process and start over with the
102 above command.