On 27/04/11 09:54 +0300, kibirango moses wrote:
Hullo Users,
I have reinstalled an tried the above instructions and i still have
the pam_start error as indicated in the config.log file below :
root@mailbackup:/usr/local/src/cyrus-sasl2_2.1.23.dfsg1# cat
config.log | grep pam
$ ./configure --enable-anon --enable-pam --enable-plain
--enable-login --enable-sql --disable-krb4 --disable-otp
--disable-cram --disable-digest
--with-mysql=/usr/local/mysql/lib/mysql
--with-pam=/usr/include/security --with-pwcheck=/var/state/saslauthd
--with-openssl=/usr/local/ssl --with-dblib=berkeley
--with-plugindir=/usr/local/lib/sasl2
--with-bdblibdir=/usr/local/berkeley/lib
--with-bdb-incdir=/usr/local/berkeley/include
--with-dbpath=/var/lib/sasl/sasldb2
--with-saslauthd=/var/state/saslauthd --with-ldap --enable-ldapdb
'--enable-pam' is not a valid option. '--with-bdblibdir' is a typo.
If your headers are in /usr/include/security, and your pam library in
/usr/lib, then you'd want to do:
--with-pam=/usr
A successful config.log should look something like:
configure:6916: checking for security/pam_appl.h
configure:6921: result: yes
configure:6916: checking for pam/pam_appl.h
configure:6921: result: no
configure:7054: checking for pam_start
configure:7124: result: no
configure:7162: gcc -o conftest -Wall -W -g -O2 -I/usr/include
-L/usr/lib conftest.c -lpam >&5
configure: In function 'main':
configure:7169:1: error: 'pam_handle_t' undeclared (first use in this
function)
configure:7169:1: note: each undeclared identifier is reported only once
for each function it appears in
configure:7169:15: error: 'pamh' undeclared (first use in this function)
configure:7172:1: warning: implicit declaration of function 'pam_start'
...
ac_cv_header_pam_pam_appl_h=no
ac_cv_header_paths_h=yes
ac_cv_header_security_pam_appl_h=yes
Which means that pam_appl.h was successfully found in
/usr/include/security/, but not /usr/include/pam/.
configure:6925: checking security/pam_appl.h usability
configure:6961: checking security/pam_appl.h presence
configure:7033: checking for security/pam_appl.h
configure:6925: checking pam/pam_appl.h usability
configure:6961: checking pam/pam_appl.h presence
configure:7033: checking for pam/pam_appl.h
configure:7054: checking for pam_start
/usr/local/src/cyrus-sasl2_2.1.23.dfsg1/configure:7116: undefined
reference to `pam_start'
/tmp/ccsfJ0eS.o:(.data+0x0): undefined reference to `pam_start'
| which can conflict with char pam_start (); below.
| char pam_start ();
| #if defined (__stub_pam_start) || defined (__stub___pam_start)
| char (*f) () = pam_start;
| return f != pam_start;
configure:7162: gcc -o conftest -Wall -W -g -O2
-I/usr/local/mysql/include/mysql -I/usr/include/security/include
-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm
-L/usr/include/security/lib conftest.c -lpam >&5
/usr/lib64/gcc/x86_64-slackware-linux/4.4.4/../../../../x86_64-slackware-linux/bin/ld:
cannot find -lpam
| #include <pam/pam_appl.h>
| #include <security/pam_appl.h>
| pam_handle_t *pamh;
| struct pam_conv *conv;
| baz = pam_start(service, user, conv, &pamh);
configure:17004: running /bin/sh './configure' --prefix=/usr/local
'--enable-anon' '--enable-pam' '--enable-plain' '--enable-login'
'--enable-sql' '--disable-krb4' '--disable-otp' '--disable-cram'
'--disable-digest' '--with-mysql=/usr/local/mysql/lib/mysql'
'--with-pam=/usr/include/security'
'--with-pwcheck=/var/state/saslauthd' '--with-openssl=/usr/local/ssl'
'--with-dblib=berkeley' '--with-plugindir=/usr/local/lib/sasl2'
'--with-bdblibdir=/usr/local/berkeley/lib'
'--with-bdb-incdir=/usr/local/berkeley/include'
'--with-dbpath=/var/lib/sasl/sasldb2'
'--with-saslauthd=/var/state/saslauthd' '--with-ldap'
'--enable-ldapdb' 'CPPFLAGS=-I/usr/local/mysql/include/mysql'
'LDFLAGS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm'
--cache-file=.././config.cache --srcdir=.
ac_cv_func_pam_start=no
ac_cv_header_pam_pam_appl_h=yes
ac_cv_header_security_pam_appl_h=yes
Kindly requesting for advice on how to fix this asap
Thanx
*root@xxxxx:/usr/local/src/cyrus-sasl2_2.1.23.dfsg1# cat config.log |grep
pam*
$ ./configure --enable-anon --enable-pam --enable-plain --enable-login
--enable-sql --disable-krb4 --disable-otp --disable-cram --disable-digest
--with-mysql=/usr/local/mysql/lib/mysql --with-pam=/usr/include/security
--with-pwcheck=/var/state/saslauthd --with-openssl=/usr/local/ssl
--with-dblib=berkeley --with-plugindir=/usr/local/lib/sasl2
--with-bdblibdir=/usr/local/berkeley/lib
--with-bdb-incdir=/usr/local/berkeley/include
--with-dbpath=/var/lib/sasl/sasldb2 --with-saslauthd=/var/state/saslauthd
--with-ldap --enable-ldapdb
configure:6925: checking security/pam_appl.h usability
configure:6961: checking security/pam_appl.h presence
configure:7033: checking for security/pam_appl.h
configure:6925: checking pam/pam_appl.h usability
configure:6986:26: error: pam/pam_appl.h: No such file or directory
| #include <pam/pam_appl.h>
configure:6961: checking pam/pam_appl.h presence
configure:6988:26: error: pam/pam_appl.h: No such file or directory
| #include <pam/pam_appl.h>
That indicates that ./configure can't find pam/pam_appl.h, whereever it may
be installed. If that file is installed, but ./configure isn't doing the
right thing, you could specify a --with-pam, or you could specify a
'CPPFLAGS' environment variable to assist it with finding the location,
like:
CPPFLAGS='-I/usr/local/include/pam/'
export CPPFLAGS
./configure ...
configure:7033: checking for pam/pam_appl.h
configure:7054: checking for pam_start
/usr/local/src/cyrus-sasl2_2.1.23.dfsg1/configure:7115: undefined reference
to `pam_start'
/tmp/ccebUB6u.o:(.data+0x0): undefined reference to `pam_start'
| which can conflict with char pam_start (); below.
| char pam_start ();
| #if defined (__stub_pam_start) || defined (__stub___pam_start)
| char (*f) () = pam_start;
| return f != pam_start;
And if you have linking errors, you might have to do:
LDFLAGS='-L/usr/local/lib/pam'
export LDFLAGS
as well. See ./configure --help for details.
configure:7162: gcc -o conftest -Wall -W -g -O2
-I/usr/local/mysql/include/mysql -I/usr/include/security/include
-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm
-L/usr/include/security/lib conftest.c -lpam >&5
configure:7169: error: 'pam_handle_t' undeclared (first use in this
function)
configure:7169: error: 'pamh' undeclared (first use in this function)
configure:7172: warning: implicit declaration of function 'pam_start'
| #include <pam/pam_appl.h>
| #include <security/pam_appl.h>
| pam_handle_t *pamh;
| struct pam_conv *conv;
| baz = pam_start(service, user, conv, &pamh);
configure:17004: running /bin/sh './configure' --prefix=/usr/local
'--enable-anon' '--enable-pam' '--enable-plain' '--enable-login'
'--enable-sql' '--disable-krb4' '--disable-otp' '--disable-cram'
'--disable-digest' '--with-mysql=/usr/local/mysql/lib/mysql'
'--with-pam=/usr/include/security' '--with-pwcheck=/var/state/saslauthd'
'--with-openssl=/usr/local/ssl' '--with-dblib=berkeley'
'--with-plugindir=/usr/local/lib/sasl2'
'--with-bdblibdir=/usr/local/berkeley/lib'
'--with-bdb-incdir=/usr/local/berkeley/include'
'--with-dbpath=/var/lib/sasl/sasldb2'
'--with-saslauthd=/var/state/saslauthd' '--with-ldap' '--enable-ldapdb'
'CPPFLAGS=-I/usr/local/mysql/include/mysql'
'LDFLAGS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm'
--cache-file=.././config.cache --srcdir=.
ac_cv_func_pam_start=no
ac_cv_header_pam_pam_appl_h=no
ac_cv_header_security_pam_appl_h=yes
On closer inspection, this looks OK.
What does saslauthd/config.log look like? any additional errors there?
--
Dan White