FAQ_Irix update

This commit is contained in:
Bruce Momjian 1998-03-23 17:54:47 +00:00
parent f74f2d39d8
commit d6adef43fa
1 changed files with 109 additions and 6 deletions

View File

@ -1,17 +1,17 @@
<PRE>
======================================================
Frequently Asked Questions (FAQ) for PostgreSQL >=V6.1
IRIX Specific
TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
======================================================
last updated: Mon Dec 04 10:20:00 GMT 1997
last updated: Mon Mar 05 17:00:00 GMT 1998
current maintainer: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
original author: Andrew C.R. Martin (martin@biochem.ucl.ac.uk)
Changes in this version (* = modified, + = new, - = removed):
+1.9) Why does IRIX5 lex fail with PostgreSQL 6.2.1?
*1.5) Can I install PostgreSQL (<V6.3) under Irix 6.x?
+1.10) How do I install PostgreSQL V6.3 under Irix 6.x?
This file is divided approximately as follows:
1.*) Installing PostgreSQL
@ -25,12 +25,13 @@ Questions answered:
1.3) What are the references in X11_LIB to libsocket and libnsl in
src/Makefile.global?
1.4) Are there any other changes I should make?
1.5) Can I install PostgreSQL under Irix 6.x?
1.5) Can I install PostgreSQL (<V6.3) under Irix 6.x?
1.6) The make fails with the following message:
ld32: ERROR 4: Conflicting flag setting: -call_shared
1.7) Why won't it link? (Problems with lorder)
1.8) I have major problems with IRIX 6!
1.9) Why does lex fail with PostgreSQL 6.2.1?
1.10) How do I install PostgreSQL V6.3 under Irix 6.x?
2.1) Why can't I move the executable files?
3.1) How do I compile a C program to create a function for extending
PostgreSQL
@ -93,7 +94,9 @@ Section 1: Installing PostgreSQL
Ginstall is part of the GNU fileutils package.
1.5) Can I install PostgreSQL under Irix 6.x?
1.5) Can I install PostgreSQL (<V6.3) under Irix 6.x?
Instructions for PostgreSQL V6.3 are answered in Question 1.10!
Irix 6.2-6.4 has a bug in ld which mishandles the addresses of
static procedures when object files are assembled into
@ -345,6 +348,107 @@ Here are the patches:
to check you have a new enough version of flex
1.10) How do I install PostgreSQL V6.3 under Irix 6.x?
Irix 6.2-6.4 has a bug in ld which mishandles the addresses of
static procedures when object files are assembled into
larger object files using 'ld -r'. This bug has been reported
to Silicon Graphics.
Depending on your Irix installation you may also encounter
2 other problems detailed below: Conflict in C standards,
Conflict in library functions.
a) Solving the ld bug
---------------------
One option is to use the Gnu version of ld. Alternatively,
the following patch should be applied as a workaround.
(Supplied by Bob Bruccoleri <bruc@bms.com> and modified for
PostgreSQL V6.3 by Lasse Hiller Petersen <lassehp@imv.aau.dk>)
Apply the following patch:
*** ./backend/Makefile.orig Tue Mar 3 15:33:58 1998
--- ./backend/Makefile Tue Mar 3 15:39:27 1998
***************
*** 63,69 ****
global1.description
local1_template1.description
postgres: $(OBJS) ../utils/version.o
! $(CC) -o postgres $(OBJS) ../utils/version.o $(LDFLAGS)
$(OBJS): $(DIRS:%=%.dir)
--- 63,73 ----
global1.description
local1_template1.description
postgres: $(OBJS) ../utils/version.o
! # $(CC) -o postgres $(OBJS) ../utils/version.o $(LDFLAGS)
! -rm -f *.o
! find . -name "*.o" -exec cp \{\} . \;
! rm -f SUBSYS.o
! $(CC) -o postgres *.o ../utils/version.o $(LDFLAGS)
$(OBJS): $(DIRS:%=%.dir)
Lasse configured with ./configure --enable-locale
and modified Makefile.custom to contain:
CC = cc -n32
LD = ld -n32
He reports that the installation without -n32 works fine too,
but the -n32 was required for compatibility with his Perl
installation. His system was an Origin200 running IRIX64 v6.4.
b) Conflict in C standards
--------------------------
I have found that the following patch is also necessary in order
to prevent a duplicate definition of a Union used for semaphores.
Apply the following patch to:
.../src/makefile/Makefile.irix5:
*** src/makefiles/Makefile.irix5.orig Thu Mar 5 16:59:58 1998
--- src/makefiles/Makefile.irix5 Thu Mar 5 17:01:13 1998
***************
*** 6,9 ****
%.so: %.o
$(LD) -G -Bdynamic -shared -o $@ $<
!
--- 6,9 ----
%.so: %.o
$(LD) -G -Bdynamic -shared -o $@ $<
! CFLAGS+= -U_NO_XOPEN4
i.e. the addition of the line:
CFLAGS+= -U_NO_XOPEN4
This is needed to stop the semun union being redefined in
/usr/include/sys/sem.h
c) Conflict in library functions
--------------------------------
In addition, if you have the nsl and crypt libraries these will
conflict with the required definitions. I think that libnsl.a
may be the Netware socket library (or something similar). In
any case, if you have these libraries, they will be added to
Makefile.global and you will need to remove them.
Thus, you should edit .../src/Makefile.global. Goto (approximately)
line 217 where LDFLAGS= is set and remove -lnsl and -lcrypt
from this line.
----------------------------------------------------------------------
Section 2: Deinstalling PostgreSQL
----------------------------------------------------------------------
@ -384,4 +488,3 @@ Dr. Andrew C.R. Martin University College London
EMAIL: (Work) martin@biochem.ucl.ac.uk (Home) andrew@stagleys.demon.co.uk
URL: http://www.biochem.ucl.ac.uk/~martin
Tel: (Work) +44(0)171 419 3890 (Home) +44(0)1372 275775
</PRE>