Thread: Setting up Postgresql on Linux

Setting up Postgresql on Linux

From
phil campaigne
Date:
Hello,
when I login to linux and check the env's I see:

PATH=/usr/local/pgsql/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/home/postgres/bin:/opt/IBMJava2-14/bin:/opt/IBMJava2-14/jre/bin:/usr/local/pgsql/bin
LD_LIBRARY_PATH=/usr/local/pgsql/lib

However after I successfully start postgresql using
/etc/init.d/postgres start
/etc/init.d/postgres status

I cannot execute the following:
psql testdb
psql: relocation error: psql: undefined symbol: PQgetssl

Then if I execute from the command line:
LD_LIBRARY_PATH=/usr/local/pgsql/lib
  export LD_LIBRARY_PATH

 PATH=/usr/local/pgsql/bin:$PATH
  export PATH

then psql testdb works!

What's going on???
thanks,
Phil




Re: Setting up Postgresql on Linux

From
Tom Lane
Date:
phil campaigne <pcampaigne@charter.net> writes:
> when I login to linux and check the env's I see:
>
PATH=/usr/local/pgsql/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/home/postgres/bin:/opt/IBMJava2-14/bin:/opt/IBMJava2-14/jre/bin:/usr/local/pgsql/bin
> LD_LIBRARY_PATH=/usr/local/pgsql/lib

What are you checking exactly?  If it's not the output of "env" then
I would say you are looking at the wrong thing.  Possibly you're looking
at a profile file that neglects to "export LD_LIBRARY_PATH", or some such.

> I cannot execute the following:
> psql testdb
> psql: relocation error: psql: undefined symbol: PQgetssl

This is clearly picking up an incompatible version of libpq.so
(specifically, psql was built with SSL support but libpq.so wasn't).
I'd suggest trying "which psql" and "ldd" on the psql executable
to figure out exactly what's what.

            regards, tom lane

Re: Setting up Postgresql on Linux

From
"scott.marlowe"
Date:
On Thu, 4 Mar 2004, phil campaigne wrote:

> Hello,
> when I login to linux and check the env's I see:
>
PATH=/usr/local/pgsql/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/home/postgres/bin:/opt/IBMJava2-14/bin:/opt/IBMJava2-14/jre/bin:/usr/local/pgsql/bin
> LD_LIBRARY_PATH=/usr/local/pgsql/lib
>
> However after I successfully start postgresql using
> /etc/init.d/postgres start
> /etc/init.d/postgres status
>
> I cannot execute the following:
> psql testdb
> psql: relocation error: psql: undefined symbol: PQgetssl
>
> Then if I execute from the command line:
> LD_LIBRARY_PATH=/usr/local/pgsql/lib
>   export LD_LIBRARY_PATH
>
>  PATH=/usr/local/pgsql/bin:$PATH
>   export PATH
>
> then psql testdb works!
>
> What's going on???

Are you exporting those same settings in your .bash_profile or whatever is
setting up your environ?