Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd800532

Browse files
committed
Move FAQ source into main cvs tree.
1 parent9f442cb commitd800532

File tree

9 files changed

+5840
-0
lines changed

9 files changed

+5840
-0
lines changed

‎doc/src/FAQ/FAQ.html

Lines changed: 1268 additions & 0 deletions
Large diffs are not rendered by default.

‎doc/src/FAQ/FAQ_DEV.html

Lines changed: 486 additions & 0 deletions
Large diffs are not rendered by default.

‎doc/src/FAQ/FAQ_german.html

Lines changed: 1136 additions & 0 deletions
Large diffs are not rendered by default.

‎doc/src/FAQ/FAQ_hpux.html

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
<PRE>
2+
=======================================================
3+
Frequently Asked Questions (FAQ) for PostgreSQL V6.4
4+
HP-UX Specific
5+
TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
6+
=======================================================
7+
last updated: Sat Nov 28 16:21:25 EST 1998
8+
9+
current maintainer: Tom Lane (tgl@sss.pgh.pa.us)
10+
original author: Tom Lane (tgl@sss.pgh.pa.us)
11+
12+
13+
Questions covered here:
14+
1.1)What do I need to install PostgreSQL on HP-UX?
15+
1.2)Anything special about the build/install procedure?
16+
1.3)yacc dies trying to process src/backend/parser/gram.y.
17+
1.4)Linking the main postgres executable fails, complaining that
18+
there's no "alloca" function.
19+
1.5)OK, it seemed to build and install, but the regression test fails.
20+
21+
22+
----------------------------------------------------------------------
23+
Section 1: Installing PostgreSQL
24+
----------------------------------------------------------------------
25+
26+
1.1)What do I need to install PostgreSQL on HP-UX?
27+
28+
PostgreSQL 6.4 is known to build and pass regression test on HPUX 9.03,
29+
9.05, and 10.20, given appropriate system patch levels and build tools.
30+
It should work on other HPUX 9.* and 10.* releases for Series 700/800
31+
machines, too. (No one has reported trying it with HPUX 11 yet.)
32+
Since this is a new FAQ, I don't yet have a lot of information about the
33+
exact prerequisites, but I'd appreciate hearing from anyone who fails to
34+
build a working copy, so that we can add more info about exactly what is
35+
needed.
36+
37+
Aside from PostgreSQL 6.4 or later sources, you will need GNU make
38+
(HP's make will not do), and either GNU gcc or HP's full ANSI C compiler.
39+
You must also get flex (GNU lex) 2.5.4 or later --- all versions of
40+
HP's lex fail on the Postgres lexer files.
41+
42+
I'd also recommend making sure you are fairly up-to-date on HP patches,
43+
particularly if you are using HPUX 9. At a minimum, if you are on HPUX 9,
44+
you *must* have PHSS_4630 (libm update) or a successor patch; otherwise
45+
Postgres' date/time functions will misbehave. On general principles you
46+
should be current on libc and ld/dld patches, as well as compiler
47+
patches if you are using HP's C compiler (but I don't currently know of
48+
any specific failures due to not having recent patches for these files).
49+
See HP's support websites, such as http://us-support.external.hp.com/,
50+
for free copies of their latest patches.
51+
52+
PostgreSQL 6.3.2 and earlier required quite a few small tweaks to
53+
install on HPUX, so I recommend you not bother with anything older
54+
than 6.4.
55+
56+
57+
1.2)Anything special about the build/install procedure?
58+
59+
When you run configure, you will want to explicitly select either the
60+
hpux_cc or hpux_gcc template depending on which compiler you plan to
61+
use:
62+
./configure --with-template=hpux_cc
63+
for HP's C compiler, or
64+
./configure --with-template=hpux_gcc
65+
for GNU gcc. (If you omit --with-template, configure may either
66+
default to hpux_cc or give up entirely, depending on which HPUX and
67+
PostgreSQL releases you have.)
68+
69+
You may want to tweak the CFLAGS setting in template/hpux_[g]cc before
70+
you configure; the distributed files contain neither -O nor -g switches,
71+
which is hardly optimal for any situation. I've seen no problems using
72+
-O with gcc 2.7.2.*.
73+
74+
The default install target location is /usr/local/pgsql, which
75+
(particularly on HPUX 10) you might want to change to something under
76+
/opt. If so, use the --prefix switch to configure.
77+
78+
If you have both HP and GNU C++ compilers in your PATH, keep an eye on
79+
whether configure picks the right one --- you want the HP c++ if you are
80+
using HP C, or g++ if you are using gcc. Mixing HP and GNU compilers
81+
won't work. You may need to provide a --with-CXX=compiler switch to
82+
force configure to pick the matching C++ compiler, or even say
83+
--without-CXX if you have a C++ compiler but it doesn't match the C
84+
compiler you want to use.
85+
86+
Otherwise the standard build/install procedure described in the
87+
PostgreSQL documentation works fine.
88+
89+
90+
1.3)yacc dies trying to process src/backend/parser/gram.y.
91+
92+
HP's yacc doesn't create its tables large enough to handle the Postgres
93+
grammar (a lot of other vendors' yaccs have this problem too). There
94+
are three possible workarounds:
95+
96+
1. The quickest answer is just to "touch" src/backend/parser/gram.c
97+
and src/backend/parser/parse.h and repeat the build. Any PostgreSQL
98+
distribution file should have up-to-date copies of those files included,
99+
so you shouldn't need to run yacc on gram.y at all ... but sometimes
100+
gram.y mistakenly has a newer timestamp in the distribution than the
101+
derived files do.
102+
103+
2. Install "bison" (GNU yacc) and reconfigure. Bison doesn't have a
104+
problem with large grammars. Note this is not the right choice if you
105+
are using HP's cc on HPUX 9 --- see next item.
106+
107+
3. Increase yacc's table sizes enough to cope. With a pre-6.4
108+
PostgreSQL grammar, I was able to get HPUX 9's yacc to work by
109+
setting YFLAGS to
110+
-d -Np2000 -Ns3000 -Nm100000 -Nl2000 -Na30000 -Nc10000
111+
(You can edit YFLAGS either in the template file before running
112+
configure, or in src/Makefile.global afterwards.) Future PostgreSQL
113+
releases might require even larger tables, but this should do for
114+
a starting point.
115+
116+
117+
1.4)Linking the main postgres executable fails, complaining that
118+
there's no "alloca" function.
119+
120+
If you're using HP's cc on HPUX 9, it's right: there's no alloca
121+
function. The only place in PostgreSQL that uses alloca is the parser
122+
(gram.c), and that does so only if it was generated with GNU bison.
123+
Unfortunately the distribution copy of gram.c is made with bison.
124+
There are several possible answers:
125+
126+
1. Remake gram.c with HP's yacc (see above item for switch settings).
127+
You might also need to remake src/backend/bootstrap/bootparse.c.
128+
129+
2. Build with gcc, which treats alloca as a compiled-in-line function.
130+
131+
3. Install HPUX 10, which has alloca. You're gonna have to do that
132+
before Y2K anyway...
133+
134+
135+
1.5)OK, it seemed to build and install, but the regression test fails.
136+
137+
There are several "expected failures" due to differences between HPUX
138+
and the regression test reference platform used by the PostgreSQL group.
139+
A look at the textual differences between the expected and actual
140+
outputs will usually reveal that the differences are minor. You should
141+
expect these differences:
142+
143+
TEST(S)COMMENTS
144+
145+
int2, int4:pg_atoi generates a differently worded error
146+
message for integer overflow.
147+
148+
float8:In 6.4, float8 shows some differences due to
149+
different handling of overflow/underflow errors in
150+
exp() and pow(). This should be fixed in 6.4.1
151+
and later.
152+
153+
float8, geometry:Lots of differences in the last digit or two
154+
because of different roundoff errors in floating
155+
arithmetic. Also, HPUX does not distinguish
156+
-0 from 0 during printout, but the reference
157+
platform does.
158+
159+
horology:HPUX time library does not know about daylight
160+
savings time before 1970, so there are some
161+
places in horology where a time will be shown
162+
in PST instead of PDT.
163+
164+
In addition, the int8 regression test will fail massively on HPUX 9,
165+
because int8 doesn't actually work on this platform (sprintf/sscanf
166+
don't cope with long long int). Either upgrade to HPUX 10, or don't
167+
use int8 data.
168+
169+
Any other error is cause for suspicion. In particular, if you see
170+
failures in the datetime test on HPUX 9, you probably forgot to
171+
install the libm patch PHSS_4630 --- see item 1.1 above.
172+
</PRE>

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp