======================================================= Frequently Asked Questions (FAQ) for PostgreSQL V6.5 Sun Solaris Specific TO BE READ IN CONJUNCTION WITH THE NORMAL FAQ ======================================================= last updated: $Date: 2000/10/19 03:18:56 $ 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