Missing pam_userdb.so from libpam-modules
Hello,
The package libpam-modules (version 0.76-22.0.0.1.amd64 from gcc-3.4)
doesn't contain pam_userdb.so. This PAM plugin is present in the i386
Sid version of the package.
Compiling pam from the source package shows:
...
make[3]: Entering directory
`/home/michich/src/pam-0.76/Linux-PAM/modules/pam_userdb'
This module will not be compiled on this system
...
The reason for this is the ./configure script decides that there is no
Berkeley database available although I have libdb3-dev installed.
The problem can be shown on compilation of a simple test program:
/* db3test.c */
int main()
{ return 0; }
$ gcc -ldb3 db3test.c #this is what scares the pam ./configure script:
/usr/lib/gcc/x86_64-linux/3.4.4/../../../../lib/libdb3.so: undefined
reference to `pthread_condattr_setpshared'
/usr/lib/gcc/x86_64-linux/3.4.4/../../../../lib/libdb3.so: undefined
reference to `pthread_mutexattr_destroy'
/usr/lib/gcc/x86_64-linux/3.4.4/../../../../lib/libdb3.so: undefined
reference to `pthread_mutexattr_setpshared'
/usr/lib/gcc/x86_64-linux/3.4.4/../../../../lib/libdb3.so: undefined
reference to `pthread_mutexattr_init'
/usr/lib/gcc/x86_64-linux/3.4.4/../../../../lib/libdb3.so: undefined
reference to `pthread_mutex_trylock'
collect2: ld returned 1 exit status
The same test works fine on i386 Sid.
It can be made to compile on my amd64 system with:
$ gcc -ldb3 -lpthread db3test.c
So either the pam's ./configure needs to add "-lpthread" too or
(more likely) db3 needs to be fixed somehow.
I noticed that in db3's debian/rules there is a commented-out line:
#export LD_ASSUME_KERNEL=2.4.24
In the i386 Sid pam source package this export is present.
I think this export was there for a reason and it is related to the problem:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=223142
Regards
Michal
Reply to: