Thread: Re: PostgreSQL solaris faq

Re: PostgreSQL solaris faq

From
Marc Liyanage
Date:
Hi there, I just received this for inclusion into
the solaris faq:

--------------------------------------



From: Michel Decima <michel.decima@rd.francetelecom.fr>
To: <liyanage@access.ch>
Subject: PostgreSQL Solaris FAQ
Date: Wed, 18 Oct 2000 18:28:02 +0200

hello,

I see you are the maintainer of the PostgreSQL Solaris FAQ, so i submit
to you something to add:

If you compile postgreSQL on a solaris box with GNU gcc and GNU ld, you
will have troubles with procedural languages. The error message is for
plpgsql :

ERROR:  Load of file /usr/local/pgsql/lib/plpgsql.so failed: ld.so.1:
/usr/local/pgsql/bin/postmaster: fatal: relocation error: file
/usr/local/pgsql/lib/plpgsql.so: symbol CurrentMemoryContext: referenced
symbol not found

(and the same for pltcl).

the solution is to use the --export-dynamic switch when linking postgres
executable. You can add the following line to the solaris_sparc_gcc
template:

LDFLAGS:-Wl,--export-dynamic

I found this hint here:
http://www.postgresql.org/mhonarc/pgsql-hackers/2000-03/msg00030.html

I spent two days in the mailing lists archives and hacking around, so I think
the solaris FAQ is a good place to put this hint ;)


MD.

some infos about my configuration :


OS: Solaris 2.7

Used Software:
     gcc-2.95.2
     make-3.79
     binutils-2.9.1
     flex-2.5.4
     bison-1.28

Source: postgresql-7.0.2
Configuration:
./configure \
     --prefix=/usr/local/pgsql \
     --with-x \
     --with-perl \
     --with-odbc \
     --without-CXX \
     --with-tcl \
     --with-includes=/usr/local/pgtools/include \
     --with-libs=/usr/local/pgtools/lib \
     --with-tclconfig=/usr/local/pgtools/lib \
     --with-tkconfig=/usr/local/pgtools/lib

Environment variables:
PGHOME=/usr/local/pgsql
PGLIB=/usr/local/pgsql/lib
PGDATA=/var/local/lib/pgsql/data
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/openwin/lib:/usr/local/pgsql/lib
--
_________________________________________________________________
Marc Liyanage                                  liyanage@access.ch
                                           http://www.access.ch/ml

    Experience is what you get when you didn't get what you wanted
_________________________________________________________________

Re: Re: PostgreSQL solaris faq

From
Bruce Momjian
Date:
Added.


>
> Hi there, I just received this for inclusion into
> the solaris faq:
>
> --------------------------------------
>
>
>
> From: Michel Decima <michel.decima@rd.francetelecom.fr>
> To: <liyanage@access.ch>
> Subject: PostgreSQL Solaris FAQ
> Date: Wed, 18 Oct 2000 18:28:02 +0200
>
> hello,
>
> I see you are the maintainer of the PostgreSQL Solaris FAQ, so i submit
> to you something to add:
>
> If you compile postgreSQL on a solaris box with GNU gcc and GNU ld, you
> will have troubles with procedural languages. The error message is for
> plpgsql :
>
> ERROR:  Load of file /usr/local/pgsql/lib/plpgsql.so failed: ld.so.1:
> /usr/local/pgsql/bin/postmaster: fatal: relocation error: file
> /usr/local/pgsql/lib/plpgsql.so: symbol CurrentMemoryContext: referenced
> symbol not found
>
> (and the same for pltcl).
>
> the solution is to use the --export-dynamic switch when linking postgres
> executable. You can add the following line to the solaris_sparc_gcc
> template:
>
> LDFLAGS:-Wl,--export-dynamic
>
> I found this hint here:
> http://www.postgresql.org/mhonarc/pgsql-hackers/2000-03/msg00030.html
>
> I spent two days in the mailing lists archives and hacking around, so I think
> the solaris FAQ is a good place to put this hint ;)
>
>
> MD.
>
> some infos about my configuration :
>
>
> OS: Solaris 2.7
>
> Used Software:
>      gcc-2.95.2
>      make-3.79
>      binutils-2.9.1
>      flex-2.5.4
>      bison-1.28
>
> Source: postgresql-7.0.2
> Configuration:
> ./configure \
>      --prefix=/usr/local/pgsql \
>      --with-x \
>      --with-perl \
>      --with-odbc \
>      --without-CXX \
>      --with-tcl \
>      --with-includes=/usr/local/pgtools/include \
>      --with-libs=/usr/local/pgtools/lib \
>      --with-tclconfig=/usr/local/pgtools/lib \
>      --with-tkconfig=/usr/local/pgtools/lib
>
> Environment variables:
> PGHOME=/usr/local/pgsql
> PGLIB=/usr/local/pgsql/lib
> PGDATA=/var/local/lib/pgsql/data
> LD_LIBRARY_PATH=/lib:/usr/lib:/usr/openwin/lib:/usr/local/pgsql/lib
> --
> _________________________________________________________________
> Marc Liyanage                                  liyanage@access.ch
>                                            http://www.access.ch/ml
>
>     Experience is what you get when you didn't get what you wanted
> _________________________________________________________________
>


--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: Re: PostgreSQL solaris faq

From
Tom Lane
Date:
Instead of putting this in the FAQ, why don't we fix the solaris
template files!?

            regards, tom lane

Re: Re: PostgreSQL solaris faq

From
Bruce Momjian
Date:
I have no idea why it would not always be in there.  Solaris guys?


> Instead of putting this in the FAQ, why don't we fix the solaris
> template files!?
>
>             regards, tom lane
>


--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: Re: PostgreSQL solaris faq

From
Peter Eisentraut
Date:
Bruce Momjian writes:

> I have no idea why it would not always be in there.  Solaris guys?

This only works for the GNU linker.  I was going to write up a configure
test for that in the next few days.

(Btw., there is no solaris_sparc_gcc template.  The entry is wrong.)

>
>
> > Instead of putting this in the FAQ, why don't we fix the solaris
> > template files!?
> >
> >             regards, tom lane
> >
>
>
>

--
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/


Re: Re: PostgreSQL solaris faq

From
Bruce Momjian
Date:
Good answer.  THanks.

> Bruce Momjian writes:
>
> > I have no idea why it would not always be in there.  Solaris guys?
>
> This only works for the GNU linker.  I was going to write up a configure
> test for that in the next few days.
>
> (Btw., there is no solaris_sparc_gcc template.  The entry is wrong.)
>
> >
> >
> > > Instead of putting this in the FAQ, why don't we fix the solaris
> > > template files!?
> > >
> > >             regards, tom lane
> > >
> >
> >
> >
>
> --
> Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/
>
>


--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026