1 ============================================================
2 Frequently Asked Questions (FAQ) for PostgreSQL 7.3
3 SCO UnixWare and OpenServer specific
4 to be read in conjunction with the installation instructions
5 ============================================================
6 last updated: $Date: 2004/08/04 21:33:39 $
8 current maintainer: Billy G. Allie (Bill.Allie@mug.org)
9 original author: Andrew Merrill (andrew@compclass.com)
12 PostgreSQL 8.0 can be built on SCO UnixWare 7 and SCO OpenServer 5.
13 On OpenServer, you can use either the OpenServer Development Kit or
14 the Universal Development Kit.
16 However, some tweaking may be needed, as described below.
22 *) Using the UDK on OpenServer
23 *) Compiling PostgreSQL using the UDK
24 *) Reading the PostgreSQL man pages
25 *) C99 Issues with the 7.1.1b Feature Supplement
26 *) --enable-thread-safety and UnixWare
27 *) float4/float8 regression failures on NaN and inf I/O.
30 ***************************************************************************
33 You should locate your copy of the SCO Skunkware CD. The Skunkware CD is
34 included with UnixWare 7 and current versions of OpenServer 5.
36 Skunkware includes ready-to-install versions of many popular programs that
37 are available on the Internet. For example, gzip, gunzip, GNU make, flex,
38 and bison are all included.
40 If you do not have this CD, the software on it is available via anonymous
41 ftp from ftp.sco.com/skunkware.
43 For UnixWare 7.1, this CD is now labeled "Open License Software Supplement".
45 Skunkware has different versions for UnixWare and OpenServer. Make sure
46 you install the correct version for your operating system, except as noted
49 Note: on UnixWare 7.1.3 and beyond, the GCC compiler is included on the UDK
52 ***************************************************************************
55 You need to use the GNU make program, which is on the Skunkware CD. By
56 default, it installs as /usr/local/bin/make. To avoid confusion with the
57 SCO make program, you may want to rename GNU make to gmake.
59 As of UnixWare 7.1.3 and above, the GNU Make program is is the OSTK portion
60 of the UDK CD, and is in /usr/gnu/bin/gmake.
63 ***************************************************************************
66 If you install the readline library, then psql (the PostgreSQL command line
67 SQL interpreter) remembers each command you type, and allows you to use
68 arrow keys to recall and edit previous commands. This is very helpful, and
69 is strongly recommended. The readline library is on the Skunkware CD.
71 The readline library is not included on the UnixWare 7.1 Skunkware CD. If
72 you have the UnixWare 7.0.0 or 7.0.1 Skunkware CDs, you can install it from
73 there. Otherwise, try ftp.sco.com/skunkware.
75 By default, readline installs into /usr/local/lib and /usr/local/include.
76 However, the PostgreSQL configure program will not find it there without
77 help. If you installed readline, then use the following options to
80 configure --with-libs=/usr/local/lib --with-includes=/usr/local/include
83 ***************************************************************************
84 *) Using the UDK on OpenServer
86 If you are using the new Universal Development Kit (UDK) compiler on
87 OpenServer, you need to specify the locations of the UDK libraries:
89 configure --with-libs=/udk/usr/lib --with-includes=/udk/usr/include
91 Putting these together with the readline options from above:
93 ./configure --with-libs="/udk/usr/lib /usr/local/lib" --with-includes="/udk/usr/include /usr/local/include"
96 ***************************************************************************
97 *) Compiling PostgreSQL 7.1 with the UDK
99 The program, backend/utils/adt/int8.c, tickles a compiler bug with in the
100 following versions (and probably others as well) of the C compiler:
102 Optimizing C Compilation System (CCS) 3.2 08/18/98
103 Optimizing C Compilation System (CCS) 3.2 09/28/99
105 If you encounter an error compiling backend/utils/adt/int8.c, please apply
108 ------------------------------8< CUT HERE >8------------------------------
109 *** src/backend/utils/adt/int8.c.orig Sat Oct 7 20:48:17 2000
110 --- src/backend/utils/adt/int8.c Sat Oct 7 20:52:03 2000
116 ! for (i = arg1, result = 1; i > 0; --i)
119 PG_RETURN_INT64(result);
124 ! for (i = arg1, result = 1; i; --i)
127 PG_RETURN_INT64(result);
128 ------------------------------8< CUT HERE >8------------------------------
130 This compiler bug seems to be fixed at least in
132 Optimizing C Compilation System (CCS) 4.0 10/23/00 (UDK FS 7.1.1b)
135 ***************************************************************************
136 *) Reading the PostgreSQL man pages
138 By default, the PostgreSQL man pages are installed into
139 /usr/local/pgsql/man. By default, UnixWare does not look there for
140 man pages. To be able to read them you need to modify the MANPATH
141 variable in /etc/default/man. I use:
143 MANPATH=/usr/lib/scohelp/%L/man:/usr/dt/man:/usr/man:/usr/share/man:scohelp:/usr/local/man:/usr/local/pgsql/man
145 On OpenServer, some extra research needs to be invested to make the
146 man pages usable, because the man system is a bit different from other
147 platforms. Currently, PostgreSQL will not install them at all.
150 ***************************************************************************
151 *) C99 Issues with the 7.1.1b Feature Supplement
153 For compilers earlier than the one released with OpenUNIX 8.0.0(UnixWare
154 7.1.2), Including the 7.1.1b Feature Supplement, you may need to specify -Xb
155 in CFLAGS or the CC environment variable. The indication of this is an
156 error in compiling tuplesort.c referencing inline functions.
158 Apparently there was a change in the 7.1.2(8.0.0) compiler and beyond.
161 ***************************************************************************
162 *) --enable-thread-safety and UnixWare
164 If you use the --enable-thread-safety configure flag, you *MUST* use -Kpthread
165 on ALL libpq using programs.
167 libpq uses pthread_* calls, which are only available with the
168 -Kpthread/-Kthread flag.
170 ***************************************************************************
171 *) float4/float8 regression failures on NaN and inf I/O.
173 You will see regression failures for the float4 and float8 regression
174 tests on the NaN and inf I/O functions. This is due to a bug in SCO's strtod
175 library function on BOTH UnixWare and OpenServer. It's slated to be fixed
176 in the first maintenance / update for UnixWare 7.1.4, and probably the
177 next MP/UP for OpenServer 5.0.7 (I'm not sure on the OSR side as of the time
178 I'm writing this (2004-05-14).
180 You might also see Join test failures due to ordering differences, and these