diff --git a/doc/FAQ_Irix b/doc/FAQ_Irix index ff574497576d925770f1becc02e8569844aba425..c87306477b8ccd51eae6e499cabc546ae2998108 100644 --- a/doc/FAQ_Irix +++ b/doc/FAQ_Irix @@ -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>