Обсуждение: Problems building some libraries in 6.4.2
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
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