Thread: trouble with mod_auth_pgsql

trouble with mod_auth_pgsql

From
cliff@cliffmeyers.com
Date:
This was the best forum I could find to try and post this message, so apologies
if it's OT... but, here goes...

I tried installing mod_auth_pgsql 0.9.12 with Apache 1.3.27 statically linked and
I'm having problems during the apache make.  If I try to build it statically,
when I configure Apache with:

./configure \
--prefix=/usr/local/apache \
--activate-module=src/modules/auth_pgsql/mod_auth_pgsql.c

I get this error during apache's make:

gcc  -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci`   -o gen_test_char
gen_test_char.o  -L/usr/local/pgsql/lib/ -lpq  -lm -lcrypt -lexpat
./gen_test_char >test_char.h
./gen_test_char: error while loading shared libraries: libpq.so.3: cannot open
shared object file: No such file or directory
make[3]: *** [test_char.h] Error 127
make[2]: *** [subdirs] Error 1
make[2]: Leaving directory `/usr/local/src/apache_1.3.27/src'
make[1]: *** [build-std] Error 2
make[1]: Leaving directory `/usr/local/src/apache_1.3.27'
make: *** [build] Error 2


However, /usr/local/pgsql/lib/libpq.so.3 DOES in fact exist on my system. I tried
passing the lib and include dirs in the configure for mod_auth_pgsql directly but
that didn't seem to make a difference.  I built mod_auth_pgsql with the standard
directions but I can't seem to figure this one out... any suggestions?  Thanks!

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org



Re: trouble with mod_auth_pgsql

From
Tom Lane
Date:
cliff@cliffmeyers.com writes:
> I get this error during apache's make:

> gcc  -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci`   -o gen_test_char
> gen_test_char.o  -L/usr/local/pgsql/lib/ -lpq  -lm -lcrypt -lexpat
> ./gen_test_char >test_char.h
> ./gen_test_char: error while loading shared libraries: libpq.so.3: cannot open
> shared object file: No such file or directory

> However, /usr/local/pgsql/lib/libpq.so.3 DOES in fact exist on my system.

Dynamic linker messages are notoriously awful :-(.  I suspect that this
message is misleading you.  Perhaps the problem is not that it can't
find libpq.so.3 but that it can't find some other library that
libpq.so.3 depends on.  Try "ldd" on libpq.so.3 and see if it shows any
library references that aren't resolved.
        regards, tom lane


Re: trouble with mod_auth_pgsql

From
cliff@cliffmeyers.com
Date:
Rene,


I added /usr/local/pgsql/lib to /etc/ld.so.conf (I assume that's the file you
were referring to) and still got the same error.  Here's exactly what I did, step
by step - maybe someone can help find what I'm doing wrong?  Thanks for your
help!!

[root@vanadium apache_1.3.27]# ./configure --prefix=/usr/local/apache_auth
Configuring for Apache, Version 1.3.27+ using installation path layout: Apache (config.layout)
Creating Makefile
Creating Configuration.apaci in src
Creating Makefile in src+ configured for Linux platform+ setting C compiler to gcc+ setting C pre-processor to gcc -E+
checkingfor system header files+ adding selected modules+ using system Expat+ checking sizeof various data types+ doing
sanitycheck on compiler and options 
Creating Makefile in src/support
Creating Makefile in src/regex
Creating Makefile in src/os/unix
Creating Makefile in src/ap
Creating Makefile in src/main
Creating Makefile in src/modules/standard
[root@vanadium apache_1.3.27]# cd ../mod_auth_pgsql-0.9.12
[root@vanadium mod_auth_pgsql-0.9.12]# ./configure
--with-apache=/usr/local/src/apache_1.3.27 --with-pgsql=/usr/local/pgsql
creating cache ./config.cache
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for ranlib... ranlib
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for static Apache module support... yes - Apache 1.3.x
checking for Apache module support via DSO through APXS... no
checking for pgsql... checking for pgsql lib... checking for pgsql include...
found in /usr/local/pgsql
updating cache ./config.cache
creating ./config.status
creating Makefile
creating Makefile.tmpl
creating mod_auth_pgsql.module
creating config.h
[root@vanadium mod_auth_pgsql-0.9.12]# make
cc -c   -I/usr/local/src/apache_1.3.27/src/include
-I/usr/local/src/apache_1.3.27/src/os/unix -I/usr/local/pgsql/include -g -O2
-DEAPI -fPIC mod_auth_pgsql.c -o mod_auth_pgsql.o
rm -f mod_auth_pgsql.a
ar rc mod_auth_pgsql.a mod_auth_pgsql.o
ranlib mod_auth_pgsql.a
[root@vanadium mod_auth_pgsql-0.9.12]# make install
mkdir -p /usr/local/src/apache_1.3.27/src/modules/auth_pgsql; cp mod_auth_pgsql.amod_auth_pgsql.c mod_auth_pgsql.exp
Makefile.tmplMakefile.libdir 
mod_auth_pgsql.module auth_pgsql_shared_stub.c
/usr/local/src/apache_1.3.27/src/modules/auth_pgsql
[root@vanadium mod_auth_pgsql-0.9.12]# cd ../apache_1.3.27
[root@vanadium apache_1.3.27]# ./configure --prefix=/usr/local/apache_auth
--activate-module=src/modules/auth_pgsql/mod_auth_pgsql.c
Configuring for Apache, Version 1.3.27+ using installation path layout: Apache (config.layout)+ activated auth_pgsql
module(modules/auth_pgsql/mod_auth_pgsql.c) 
Creating Makefile
Creating Configuration.apaci in src
Creating Makefile in src+ configured for Linux platform+ setting C compiler to gcc+ setting C pre-processor to gcc -E+
checkingfor system header files+ adding selected modules   o auth_pgsql_module uses ConfigStart/End+ using system
Expat+checking sizeof various data types+ doing sanity check on compiler and options 
Creating Makefile in src/support
Creating Makefile in src/regex
Creating Makefile in src/os/unix
Creating Makefile in src/ap
Creating Makefile in src/main
Creating Makefile in src/modules/standard
Creating Makefile in src/modules/auth_pgsql
[root@vanadium apache_1.3.27]# make
===> src
make[1]: Entering directory `/usr/local/src/apache_1.3.27'
make[2]: Entering directory `/usr/local/src/apache_1.3.27/src'
===> src/regex
sh ./mkh  -p regcomp.c >regcomp.ih
gcc -I.  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` -DPOSIX_MISTAKE   -c -o regcomp.o regcomp.c
sh ./mkh  -p engine.c >engine.ih
gcc -I.  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` -DPOSIX_MISTAKE   -c -o regexec.o regexec.c
gcc -I.  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` -DPOSIX_MISTAKE   -c -o regerror.o regerror.c
gcc -I.  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` -DPOSIX_MISTAKE   -c -o regfree.o regfree.c
rm -f libregex.a
ar cr libregex.a regcomp.o regexec.o regerror.o regfree.o
ranlib libregex.a
<=== src/regex
===> src/os/unix
gcc -c  -I../../os/unix -I../../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../../apaci` os.c
gcc -c  -I../../os/unix -I../../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../../apaci` os-inline.c
rm -f libos.a
ar cr libos.a os.o os-inline.o
ranlib libos.a
<=== src/os/unix
===> src/ap
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_cpystrn.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_execve.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_fnmatch.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_getpass.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_md5c.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_signal.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_slack.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_snprintf.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_sha1.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_checkpass.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_base64.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_ebcdic.c
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` ap_strtol.c
rm -f libap.a
ar cr libap.a ap_cpystrn.o ap_execve.o ap_fnmatch.o ap_getpass.o ap_md5c.o
ap_signal.o ap_slack.o ap_snprintf.o ap_sha1.o ap_checkpass.o ap_base64.o
ap_ebcdic.o ap_strtol.o
ranlib libap.a
<=== src/ap
===> src/main
gcc -c  -I../os/unix -I../include   -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED
`../apaci` gen_test_char.c
gcc  -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci`   -o gen_test_char
gen_test_char.o  -L/usr/local/pgsql/lib -lpq  -lm -lcrypt -lexpat
./gen_test_char >test_char.h
./gen_test_char: error while loading shared libraries: libpq.so.3: cannot open
shared object file: No such file or directory
make[3]: *** [test_char.h] Error 127
make[2]: *** [subdirs] Error 1
make[2]: Leaving directory `/usr/local/src/apache_1.3.27/src'
make[1]: *** [build-std] Error 2
make[1]: Leaving directory `/usr/local/src/apache_1.3.27'
make: *** [build] Error 2








On Wed, 21 May 2003 10:53:57 -0300, Renê Salomão wrote:

>
> Hi Cliff,
>
>  Just a suggestion from a newbie... Did u included the pglsq/lib dir in
> ld.conf.so or export it to LD_LIBRARY_PATH???
>
>
>
> On Tue, 20 May 2003 21:14:31 -0700
> (PDT) cliff@cliffmeyers.com wrote:
>
> > This was the best forum I could find to try and post this message, so
> > apologies if it's OT... but, here goes...
> >
> > I tried installing mod_auth_pgsql 0.9.12 with Apache 1.3.27 statically
> > linked and I'm having problems during the apache make.  If I try to
> > build it statically, when I configure Apache with:
> >
> > ./configure \
> > --prefix=/usr/local/apache \
> > --activate-module=src/modules/auth_pgsql/mod_auth_pgsql.c
> >
> > I get this error during apache's make:
> >
> > gcc  -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci`   -o
> > gen_test_char gen_test_char.o  -L/usr/local/pgsql/lib/ -lpq  -lm
> > -lcrypt -lexpat./gen_test_char >test_char.h
> > ./gen_test_char: error while loading shared libraries: libpq.so.3:
> > cannot open shared object file: No such file or directory
> > make[3]: *** [test_char.h] Error 127
> > make[2]: *** [subdirs] Error 1
> > make[2]: Leaving directory `/usr/local/src/apache_1.3.27/src'
> > make[1]: *** [build-std] Error 2
> > make[1]: Leaving directory `/usr/local/src/apache_1.3.27'
> > make: *** [build] Error 2
> >
> >
> > However, /usr/local/pgsql/lib/libpq.so.3 DOES in fact exist on my
> > system. I tried passing the lib and include dirs in the configure for
> > mod_auth_pgsql directly but that didn't seem to make a difference.  I
> > built mod_auth_pgsql with the standard directions but I can't seem to
> > figure this one out... any suggestions?  Thanks!
> >
> > ---------------------------(end of
> > broadcast)--------------------------- TIP 6: Have you searched our
> > list archives?
> >
> > http://archives.postgresql.org
> >


Re: trouble with mod_auth_pgsql

From
cliff@cliffmeyers.com
Date:
I took your advice but it looks like all the library dependancies are satisfied.  

What's even more infuriating is that I got this to work once before, but I must
has missed something while originally documenting my steps because now I've
followed it precisely and it won't work :-(

Any other ideas?  Thanks for your input, everyone.


-Cliff


On Wed, 21 May 2003 10:20:45 -0400, Tom Lane wrote:

> 
> cliff@cliffmeyers.com writes:
> > I get this error during apache's make:
> 
> > gcc  -DLINUX=22 -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci`   -o gen_test_char
> > gen_test_char.o  -L/usr/local/pgsql/lib/ -lpq  -lm -lcrypt -lexpat
> > ./gen_test_char >test_char.h
> > ./gen_test_char: error while loading shared libraries: libpq.so.3: cannot open
> > shared object file: No such file or directory
> 
> > However, /usr/local/pgsql/lib/libpq.so.3 DOES in fact exist on my system.
> 
> Dynamic linker messages are notoriously awful :-(.  I suspect that this
> message is misleading you.  Perhaps the problem is not that it can't
> find libpq.so.3 but that it can't find some other library that
> libpq.so.3 depends on.  Try "ldd" on libpq.so.3 and see if it shows any
> library references that aren't resolved.
> 
>             regards, tom lane


Re: trouble with mod_auth_pgsql

From
cliff@cliffmeyers.com
Date:
I'm not sure exactly what you're getting at in your post... except that when I
issue your first command, nothing shows up...

[root@vanadium apache_1.3.27]# find -mount -name "libpq.so.3*"  
[root@vanadium apache_1.3.27]# find / -name "libpq.so.3*"       
/usr/local/src/postgresql-7.3.2/src/interfaces/libpq/libpq.so.3.0
/usr/local/src/postgresql-7.3.2/src/interfaces/libpq/libpq.so.3
/usr/local/pgsql/lib/libpq.so.3
/usr/local/pgsql/lib/libpq.so.3.0

My / and /usr are on separate partitions so I assume that by removing the -mount
option that's why the files show up afterwards.  Any other ideas?


-Cliff



On Wed, 21 May 2003 11:44:54 -0400, JL wrote:

> 
> #>find / -mount -name "libpq.so.3*"
> /usr/lib/libpq.so.3.0
> /usr/lib/libpq.so.3
> 
> #>l /usr/lib/libpq.so.3*
> lrwxrwxrwx    1 root     root           12 May  2 13:09 /usr/lib/libpq.so.3 ->
> libpq.so.3.0*
> -rwxr-xr-x    1 root     root        96044 Mar 17 10:57 /usr/lib/libpq.so.3.0*


Re: trouble with mod_auth_pgsql

From
gemons@wanadoo.nl
Date:
unregister gemons@wanadoo.nl 


__________________________________________________________


http://www.wanadoo.nl/