==================================================== Frequently Asked Questions (FAQ) for Postgres95 IRIX Specific TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ ==================================================== last updated: Fri Oct 11 14:45:00 BST 1996 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): +3.1) How do I compile a C program to create a function for extending Postgres95 This file is divided approximately as follows: 0.*) Bugs in Postgres95 V1.08 1.*) Installing Postgres95 2.*) Uninstalling Postgres95 3.*) Extending Postgres95 Questions answered: 0.1) What bugs do I need to fix before Postgres95 will compile under Irix? 1.1) What extra items do I need to install Postgres95 under Irix? 1.2) What changes do I need to make to src/Makefile.global? 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? 2.1) Why can't I move the executable files? ---------------------------------------------------------------------- Section 0: Bugs in Postgres95 V1.08 ---------------------------------------------------------------------- 0.1) What bugs do I need to fix before Postgres95 will compile under Irix? a) Fix the bug in src/Makefile.global: Change # Globally pass PORTNAME CFLAGS+= -DPORTNAME_$(PORTNAME) CFLAGS += -I ../../backend/port/$(PORTNAME) to # Globally pass PORTNAME CFLAGS+= -DPORTNAME_$(PORTNAME) CFLAGS += -I../../backend/port/$(PORTNAME) (i.e. remove the space after the -I) b) Add the missing prototype to src/bin/pg_dump/pg_dump.h After the line extern int findLastBuiltinOid(); add extern void setMaxOid(FILE *fout); ---------------------------------------------------------------------- Section 1: Installing Postgres95 ---------------------------------------------------------------------- 1.1) What extra items do I need to install Postgres95 under Irix? You *must* have the following installed: a) Gnu make (installed as gmake) You are recommended to install the following: a) GNU install (installed as ginstall) You may choose to install the following: a) GNU readline library (if you wish psql to have readline support). b) tcl/tk (if you wish to compile pgtclsh) 1.2) What changes do I need to make to src/Makefile.global? You *must* set the following variables: PORTNAME= irix5 IPCSDIR= /usr/sbin You will also need to change the following to match your own installation: SRCDIR POSTGRESDIR If you switch on the USE_TCL option, you will need to set these: TCL_INCDIR= TCL_LIBDIR= TCL_LIB = TK_INCDIR= TK_LIBDIR= TK_LIB = You may also make any other changes you need as documented in the INSTALL file and in Makefile.global 1.3) What are the references in X11_LIB to libsocket and libnsl in src/Makefile.global? These are Sun Solaris specific and shouldn't be in Makefile.global The compile (including pgtclsh) seems to go OK even though these don't exist... 1.4) Are there any other changes I should make? If you have installed the GNU install program (ginstall), you should edit src/mk/port/postgres.mk.irix5 and change the line: INSTALL=/usr/bin/X11/bsdinst to INSTALL=ginstall For an explanation as to why this is a good idea, see Question 2.1 ---------------------------------------------------------------------- Section 2: Deinstalling Postgres95 ---------------------------------------------------------------------- 2.1) Why can't I move the executable files? By default, the IRIX port uses the BSD compatible version of install from /usr/bin/X11. If you read the man page for this version of install, you will see that it is not meant for end-user use; it has the interesting side-effect of chowning files it installs to root. You should still be able to delete the files as you (the postgres user) will own the directory in which they are stored. The normal IRIX install program cannot be used easily as it takes its arguments in the reverse order. It is therefore recommended to use the GNU version of install (ginstall). See Question 1.4 ---------------------------------------------------------------------- Section 3: Extending Postgres95 ---------------------------------------------------------------------- 3.1) How do I compile a C program to create a function for extending Postgres95 Here is a sample command line: cc -I/usr/local/postgres95/include/ -I/usr/local/postgres95/src/backend -shared -o funcs.so funcs.c **************************************************************************** Dr. Andrew C.R. Martin, University College London & SciTech Software EMAIL: martin@biochem.ucl.ac.uk Tel:(Work) +44(0)171 419 3890 URL: http://www.biochem.ucl.ac.uk/~martin (Home) +44(0)1372 275775 ****************************************************************************