=======================================================
Frequently Asked Questions (FAQ) for PostgreSQL  V6.5
Sun Solaris Specific
TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ
=======================================================
last updated:        $Date: 2000/08/26 19:34:24 $

current maintainer:  Marc Liyanage (liyanage@access.ch)
original author:     Marc Liyanage (liyanage@access.ch)


Contents:

1.1) What tools do I need to build and install PostgreSQL on Solaris?
1.2) What else do I have to do before building PostgreSQL? 


Notes:

- The commands given here are for the bash shell. If you use
  a different shell, you'll have to change the commands accordingly,
  especially these regarding environment variables.

- These instructions are written for Solaris 2.6


----------------------------------------------------------------------
Section 1:  Building and Installing PostgreSQL
----------------------------------------------------------------------

1.1) What tools do I need to build and install PostgreSQL on Solaris?

You will need

- GNU flex 2.5.4 or better (the lex included in Solaris 2.6 won't work)
- GNU bison (the yacc included in Solaris 2.6 won't work)
- GNU zip (gzip and especially gunzip for installing the docs)
- GNU make
- GNU readline library

We also used

- GNU cc (gcc 2.8.1)

If you like Solaris packages, you can find these tools here:
http://www.sunfreeware.com

If you prefer sources, look here:
http://www.gnu.org/order/ftp.html



1.2) What else do I have to do before building PostgreSQL?

Shared libraries
----------------

The default installation procedure puts the shared libraries
into "/usr/local/pgsql/lib", but the dynamic loader won't
find them there at runtime unless you use some hack like
symlinking the libraries in /usr/lib or setting LD_LIBRARY_PATH
for every user that will use the DB system.

The first time you'll encounter this problem is usually when
running "initdb". It will fail with something like
   
   ld.so.1: pg_id: fatal: libpq.so: open failed: No such file or directory  
   
We recommend that you store the path of the directory containing
the libraries in the environment variable LD_RUN_PATH *before*
starting the build. This will cause the linker to store this
path in the binaries.

Do this:

# export LD_RUN_PATH=/usr/local/pgsql/lib

(or wherever you choose to put the libraries)

There is some good information about this here:
http://www.visi.com/~barr/ldpath.html