Обсуждение: Problems building some libraries in 6.4.2

Поиск
Список
Период
Сортировка

Problems building some libraries in 6.4.2

От
Constantin Teodorescu
Дата:
I'm unhappy to say that but ...

still there are some problems compiling 6.4.2 on Linux for libpgtcl and
libplpgsql libraries.

Configuration : RedHat Linux 5.1 i386 on Pentium

After untarr-ing the final 6.4.2 distribution and configuring it with :

./configure --with-tcl

1. For libpgtcl, I had to manually add -lcrypt to SHLIB_LINK line
Makefile in src/interfaces/libpgtcl
2. For libplpgsql, I had to manually ad -lc to SHLIB_LINK line Makefile
in src/pl/pgsql/src


For example, the original line for plpgsql was :
SHLIB_LINK=-L($LIBPQDIR) -lpq

Compiled that way, using plpgsql functions give the error "cannot stat
in plpgsql.so" !

After adding -lc as shown above, my functions worked corectly.

Best regards,
-- 
Constantin Teodorescu
FLEX Consulting Braila, ROMANIA


Re: [HACKERS] Problems building some libraries in 6.4.2

От
Tom Lane
Дата:
Constantin Teodorescu <teo@flex.ro> writes:
> still there are some problems compiling 6.4.2 on Linux for libpgtcl and
> libplpgsql libraries.
> Configuration : RedHat Linux 5.1 i386 on Pentium
> 1. For libpgtcl, I had to manually add -lcrypt to SHLIB_LINK line
> Makefile in src/interfaces/libpgtcl

I have fixed this.  It's ugly; libraries that call libpq should not have
to know what libpq calls.  But it seems we have no choice, for now.
Perhaps GNU libtool will allow us to get rid of the explicit dependency.
(I've decided to wait for libtool 1.3 before trying to use it for
Postgres, however.)

> 2. For libplpgsql, I had to manually ad -lc to SHLIB_LINK line Makefile
> in src/pl/pgsql/src

I don't understand this.  If you are on a Linux box then
src/Makefile.shlib should add -lc to SHLIB_LINK for you.
Is PORTNAME not getting set to "linux"?

What I *would* expect that plpgsql needs in SHLIB_LINK is -lcrypt,
for the same reason that libpgtcl needs it.  I will change the makefile
accordingly.
        regards, tom lane