Mod_perl, mod_auth_pam problems

Hello,

I am attempting to build Apache with mod_auth_pam, and
have been unable to
figure out a method that will work. I am using the
method of compiling
mod_perl in Apache that is described in the RT3 manual
appendix, and have
added the APACI_ARGS line (see below) to add
mod_auth_pam. The Makefile.PL
command completes semmingly ok, but when I try to run
make, I get results
that include the following error:

modules/standard/libstandard.a(mod_auth_pam.o): In

function
pam_auth_basic_user': mod_auth_pam.o(.text+0x30f): undefined reference to pam_start’
mod_auth_pam.o(.text+0x33e): undefined reference to
pam_strerror' mod_auth_pam.o(.text+0x36e): undefined reference to pam_fail_delay’
mod_auth_pam.o(.text+0x37f): undefined reference to
pam_authenticate' mod_auth_pam.o(.text+0x3b2): undefined reference to pam_strerror’
mod_auth_pam.o(.text+0x3dd): undefined reference to
pam_end' mod_auth_pam.o(.text+0x3fa): undefined reference to pam_end’
mod_auth_pam.o(.text+0x421): undefined reference to
pam_acct_mgmt' mod_auth_pam.o(.text+0x450): undefined reference to pam_strerror’
mod_auth_pam.o(.text+0x46c): undefined reference to
pam_end' mod_auth_pam.o(.text+0x48a): undefined reference to pam_end’
collect2: ld returned 1 exit status
make[3]: *** [target_static] Error 1
make[3]: Leaving directory
/tmp/apache/apache_1.3.29/src' make[2]: *** [build-std] Error 2 make[2]: Leaving directory /tmp/apache/apache_1.3.29’
make[1]: *** [build] Error 2
make[1]: Leaving directory
`/tmp/apache/apache_1.3.29’
make: *** [apaci_httpd] Error 2

I have done some web searching that says it is
necessary to install pam_devel. I have
installed it, and get the same error.

I would be very grateful for any help.

Using: perl-5.6.0-108
Linux-PAM-0.74
Apache 1.3.29
mod_perl-1.27
pam-devel-0.74-51
mod_auth_pam-1.1.1
SuSE Linux Ent.Srver 7
kernel 2.4.7-64GB-SMP

Here is the mod_perl Makefile command:


From Makefile.PL in the mod_perl directory:


$APACI_ARGS =

“–activate-module=src/modules/standard/mod_auth_pam.o”;

perl Makefile.PL

APACHE_SRC=/tmp/apache/apache_1.3.29/src USE_APACI=1
DO_HTTPD=1 EVERYTHING=1

This command appears to run ok.

Will configure via APACI
cp apaci/Makefile.libdir
/tmp/apache/apache_1.3.29/src/modules/perl/Makefile.libdir
cp apaci/Makefile.tmpl
/tmp/apache/apache_1.3.29/src/modules/perl/Makefile.tmpl
cp apaci/README
/tmp/apache/apache_1.3.29/src/modules/perl/README
cp apaci/configure
/tmp/apache/apache_1.3.29/src/modules/perl/configure
cp apaci/libperl.module
/tmp/apache/apache_1.3.29/src/modules/perl/libperl.module
cp apaci/mod_perl.config.sh
/tmp/apache/apache_1.3.29/src/modules/perl/mod_perl.config.sh
cp apaci/load_modules.pl
/tmp/apache/apache_1.3.29/src/modules/perl/load_modules.pl
cp apaci/find_source
/tmp/apache/apache_1.3.29/src/modules/perl/find_source
cp apaci/apxs_cflags
/tmp/apache/apache_1.3.29/src/modules/perl/apxs_cflags
cp apaci/perl_config
/tmp/apache/apache_1.3.29/src/modules/perl/perl_config
cp apaci/mod_perl.exp
/tmp/apache/apache_1.3.29/src/modules/perl/mod_perl.exp
PerlDispatchHandler…enabled
PerlChildInitHandler…enabled
PerlChildExitHandler…enabled
PerlPostReadRequestHandler…enabled
PerlTransHandler…enabled
PerlHeaderParserHandler…enabled
PerlAccessHandler…enabled
PerlAuthenHandler…enabled
PerlAuthzHandler…enabled
PerlTypeHandler…enabled
PerlFixupHandler…enabled
PerlHandler…enabled
PerlLogHandler…enabled
PerlInitHandler…enabled
PerlCleanupHandler…enabled
PerlRestartHandler…enabled
PerlStackedHandlers…enabled
PerlMethodHandlers…enabled
PerlDirectiveHandlers…enabled
PerlTableApi…enabled
PerlLogApi…enabled
PerlUriApi…enabled
PerlUtilApi…enabled
PerlFileApi…enabled
PerlConnectionApi…enabled
PerlServerApi…enabled
PerlSections…enabled
PerlSSI…enabled
Will run tests as User: ‘nobody’ Group: ‘root’
(cd /tmp/apache/apache_1.3.29 && CC=“cc” CFLAGS="
-fno-strict-aliasing
-I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64" ./configure
–activate-module=src/modules/perl/libperl.a
–disable-rule=EXPAT
–activate-module=src/modules/standard/mod_auth_pam.o)
Configuring for Apache, Version 1.3.29

  • using installation path layout: Apache
    (config.layout)
  • activated perl module (modules/perl/libperl.a)
  • activated auth_pam module
    (modules/standard/mod_auth_pam.o)
    Creating Makefile
    Creating Configuration.apaci in src
    • id: mod_perl/1.27
    • id: Perl/v5.8.3 (linux) [/usr/local/bin/perl]
      Creating Makefile in src
  • configured for Linux platform
  • setting C pre-processor to cc -E
  • using “tr [a-z] [A-Z]” to uppercase
  • checking for system header files
  • adding selected modules
    o perl_module uses ConfigStart/End
    • mod_perl build type: OBJ
    • setting up mod_perl build environment
    • adjusting Apache build environment
    • enabling Perl support for SSI (mod_include)
  • 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/perl
    Checking CGI.pm VERSION…ok
    Checking for LWP::UserAgent…ok
    Checking for HTML::HeadParser…ok
    Writing Makefile for Apache
    Writing Makefile for Apache::Connection
    Writing Makefile for Apache::Constants
    Writing Makefile for Apache::File
    Writing Makefile for Apache::Leak
    Writing Makefile for Apache::Log
    Writing Makefile for Apache::ModuleConfig
    Writing Makefile for Apache::PerlRunXS
    Writing Makefile for Apache::Server
    Writing Makefile for Apache::Symbol
    Writing Makefile for Apache::Table
    Writing Makefile for Apache::URI
    Writing Makefile for Apache::Util
    Writing Makefile for mod_perl

Do you Yahoo!?
Yahoo! Search - Find what you�re looking for faster

I have struggled with this for several days, finally
decided to ask for help, and now, within minutes of
posting, I have finally got the mod_perl make to work,
and Apache configured. Here, if it will help anyone
else
who might possibly encounter the same problem:

In the Makefile.PL for mod_perl:

set:

$APACI_ARGS =
“–activate-module=src/modules/standard/mod_auth_pam.o”;

(you might have mod_auth_pam.c and mod_auth_pam.o in
the src/modules/extra directory, but I tried a lot of
different things before
getting to this point)

also set:

$PERL_EXTRA_LIBS = “-lpam”;

I hope this prevents anyone else from the difficulties
I have encountered.

R.

Do you Yahoo!?
Yahoo! Search - Find what you�re looking for faster