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 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 On 4/25/11, Dan White <dwhite@xxxxxxx> wrote: > On 23/04/11 11:04 +0300, kibirango moses wrote: >>Hullo Users, >> >>I am having a compilation problem of Cyrus-sasl2 with Pam . The Pam >>authentication mechanism is missing and unknown >> >>*root@xxxxx:/usr/local/src/cyrus-sasl2_2.1.23.dfsg1# saslauthd -v* >>saslauthd 2.1.23 >> >>authentication mechanisms: getpwent rimap shadow ldap >> >>*root@xxxxx:/usr/local/src/cyrus-sasl2_2.1.23.dfsg1# saslauthd -a pam* >> >>saslauthd[31056] :set_auth_mech : unknown authentication mechanism: pam >> >> >>*Configure statement:* >> >> ./configure --enable-anon --enable-pam --enable-plain --enable-login >>--enable-sql --disable-krb4 --disable-otp --disable-cram --disable-digest >>--with-mys >>ql=/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 > > There is no --enable-pam that I see. There is a: > > --with-pam=DIR use PAM (rooted in DIR) yes > > But you probably only need to use that option if your pam installation is > in a location that ./configure cannot find. > >>*Errors in config.log:* >>*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 >> >>Couls this be the problem and How can i fix this. >> >> It is really problematic >> >>Thanx >>Moses > > -- > Dan White >