17.5. Post-Installation Setup
17.5.1. Shared Libraries
On some systems with shared libraries you need to tell the system how to find the newly installed shared libraries. The systems on which this is not necessary include FreeBSD , HP-UX , Linux , NetBSD , OpenBSD , and Solaris .
The method to set the shared library search path varies between
platforms, but the most widely-used method is to set the
environment variable
LD_LIBRARY_PATH
like so: In Bourne
shells (
sh
,
ksh
,
bash
,
zsh
):
LD_LIBRARY_PATH=/usr/local/pgsql/lib export LD_LIBRARY_PATH
or in
csh
or
tcsh
:
setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
Replace
/usr/local/pgsql/lib
with whatever you set
to in
Step 1
.
You should put these commands into a shell start-up file such as
--libdir
/etc/profile
or
~/.bash_profile
. Some
good information about the caveats associated with this method can
be found at
http://xahlee.info/UnixResource_dir/_/ldpath.html
.
On some systems it might be preferable to set the environment
variable
LD_RUN_PATH
before
building.
On
Cygwin
, put the library
directory in the
PATH
or move the
.dll
files into the
bin
directory.
If in doubt, refer to the manual pages of your system (perhaps
ld.so
or
rld
). If you later
get a message like:
psql: error in loading shared libraries libpq.so.2.1: cannot open shared object file: No such file or directory
then this step was necessary. Simply take care of it then.
If you are on Linux and you have root access, you can run:
/sbin/ldconfig /usr/local/pgsql/lib
(or equivalent directory) after installation to enable the
run-time linker to find the shared libraries faster. Refer to the
manual page of
ldconfig
for more information. On
FreeBSD
,
NetBSD
, and
OpenBSD
the command is:
/sbin/ldconfig -m /usr/local/pgsql/lib
instead. Other systems are not known to have an equivalent command.
17.5.2. Environment Variables
If you installed into
/usr/local/pgsql
or some other
location that is not searched for programs by default, you should
add
/usr/local/pgsql/bin
(or whatever you set
to in
Step 1
)
into your
--bindir
PATH
. Strictly speaking, this is not
necessary, but it will make the use of
PostgreSQL
much more convenient.
To do this, add the following to your shell start-up file, such as
~/.bash_profile
(or
/etc/profile
, if you
want it to affect all users):
PATH=/usr/local/pgsql/bin:$PATH export PATH
If you are using
csh
or
tcsh
, then use this command:
set path = ( /usr/local/pgsql/bin $path )
To enable your system to find the man documentation, you need to add lines like the following to a shell start-up file unless you installed into a location that is searched by default:
MANPATH=/usr/local/pgsql/share/man:$MANPATH export MANPATH
The environment variables
PGHOST
and
PGPORT
specify to client applications the host and port of the database
server, overriding the compiled-in defaults. If you are going to
run client applications remotely then it is convenient if every
user that plans to use the database sets
PGHOST
. This
is not required, however; the settings can be communicated via command
line options to most client programs.