Hi,
In trying to figure out how to get mod_perl to work on Cygwin (I'm
convinced it's possible.. I've been able to compile and make install with
some help, and got Apache::Status working), now i want to get the tests
passing (it makes me feel much better).
Here's the "make test" output:
cp t/conf/mod_perl_srm.conf t/conf/srm.conf
../apache_1.3.24/src/httpd -f `pwd`/t/conf/httpd.conf -X -d `pwd`/t &
httpd listening on port 8529
will write error_log to: t/logs/error_log
letting apache warm up...\c
done
/usr/bin/perl t/TEST 0
still waiting for server to warm up...............not ok
server failed to start! (please examine t/logs/error_log) at t/TEST line 95.
make: *** [run_tests] Error 9
Error log:
[notice] Destruction->DESTROY called for $global_object
Prototype mismatch: sub Socket::INADDR_ANY vs () at
/usr/lib/perl5/5.6.1/cygwin-multi/Socket.pm line 329.
Prototype mismatch: sub Socket::INADDR_BROADCAST vs () at
/usr/lib/perl5/5.6.1/cygwin-multi/Socket.pm line 330.
Prototype mismatch: sub Socket::INADDR_LOOPBACK vs () at
/usr/lib/perl5/5.6.1/cygwin-multi/Socket.pm line 331.
Prototype mismatch: sub Socket::INADDR_LOOPBACK vs () at
/usr/lib/perl5/5.6.1/cygwin-multi/Socket.pm line 332.
Subroutine fileparse_set_fstype redefined at
/usr/lib/perl5/5.6.1/cygwin-multi/File/Basename.pm line 153.
Subroutine fileparse redefined at
/usr/lib/perl5/5.6.1/cygwin-multi/File/Basename.pm line 167.
Subroutine basename redefined at
/usr/lib/perl5/5.6.1/cygwin-multi/File/Basename.pm line 224.
Subroutine dirname redefined at
/usr/lib/perl5/5.6.1/cygwin-multi/File/Basename.pm line 237.
[Sat Jun 15 00:08:55 2002] [warn] [notice] child_init for process 1372,
report any problems to [no address given]
[Sat Jun 15 00:08:55 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
[Sat Jun 15 00:08:56 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
[Sat Jun 15 00:08:58 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
[Sat Jun 15 00:09:01 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
[Sat Jun 15 00:09:05 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
[Sat Jun 15 00:09:05 2002] [error] [client 127.0.0.1] File does not exist:
./t/docs/test.html
Atfer this, I find httpd hanging.
mod_perl was build with Apache 1.3.24, with these options
(makepl_args.mod_perl):
APACHE_SRC=../apache_1.3.24/src
USE_APACI=1
EVERYTHING=1
PERL_EXTRA_CFLAGS=-DUSEIMPORTLIB
DO_HTTPD=1
APACI_ARGS=--enable-rule=SHARED_CORE
APACI_ARGS=--enable-module=so
Furthermore, I have this patch applied (this one's for 1.26, but passes
cleanly for 1.27), which curent the mod_perl build process for me (for
those having problems building on Cygwin, yu should apply this patch):
diff -ru mod_perl-1.26/Makefile.PL mod_perl-1.26-new/Makefile.PL
--- mod_perl-1.26/Makefile.PL Thu Jul 12 04:42:04 2001
+++ mod_perl-1.26-new/Makefile.PL Thu Apr 18 13:06:03 2002
@@ -999,7 +999,7 @@
if($USE_APACI and not $PREP_HTTPD and not $USE_APXS) {
my $shrpenv = $Config{shrpenv} || "";
$shrpenv .= ' ' if $shrpenv;
- my $cmd = "CC=\"${shrpenv}$Config{cc}\" ";
+ my $cmd = "CC=\"$Config{cc}\" ";
if($PERL_EXTRA_CFLAGS) {
$cmd .= qq(CFLAGS="$PERL_EXTRA_CFLAGS" );
diff -ru mod_perl-1.26/apaci/libperl.module
mod_perl-1.26-new/apaci/libperl.module
--- mod_perl-1.26/apaci/libperl.module Wed Aug 4 04:00:11 1999
+++ mod_perl-1.26-new/apaci/libperl.module Sat Feb 16 00:27:44 2002
@@ -49,6 +49,7 @@
if [ ".$my_buildtype" = .OBJ ]; then
my_perl_libs="`egrep '^PERL_LIBS=' $my_outfile | tail -1 | cut
-d= -f2-`"
LIBS="$LIBS $my_perl_libs"
+ LD_SHCORE_LIBS="$LD_SHCORE_LIBS $my_perl_libs"
fi
# Perl support for SSI (mod_include)
diff -ru mod_perl-1.26/apaci/mod_perl.config.sh
mod_perl-1.26-new/apaci/mod_perl.config.sh
--- mod_perl-1.26/apaci/mod_perl.config.sh Fri Jul 6 22:41:03 2001
+++ mod_perl-1.26-new/apaci/mod_perl.config.sh Thu Apr 18 13:06:03 2002
@@ -1,3 +1,4 @@
+#!/bin/sh
##
## mod_perl.config.sh -- mod_perl configuration transformation script
## Written by Ralf S. Engelschall <[EMAIL PROTECTED]>
diff -ru mod_perl-1.26/src/modules/perl/mod_perl.h
mod_perl-1.26-new/src/modules/perl/mod_perl.h
--- mod_perl-1.26/src/modules/perl/mod_perl.h Wed Jul 11 05:36:16 2001
+++ mod_perl-1.26-new/src/modules/perl/mod_perl.h Thu Apr 18 13:06:03
2002
@@ -67,9 +67,6 @@
#ifndef IS_MODULE
#define IS_MODULE
#endif
-#ifndef SHARED_MODULE
-#define SHARED_MODULE
-#endif
#ifdef PERL_THREADS
#define _INCLUDE_APACHE_FIRST
perl -V:
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
Platform:
osname=cygwin, osvers=1.3.2(0.3932), archname=cygwin-multi
uname='cygwin_nt-4.0 loreley 1.3.2(0.3932) 2001-05-20 23:28 i686 unknown '
config_args='-de -Dusemultiplicity'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=define
useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
Compiler:
cc='gcc', ccflags ='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing
-I/usr/local/include',
optimize='-O2',
cppflags='-DPERL_USE_SAFE_PUTENV -fno-strict-aliasing
-I/usr/local/include'
ccversion='', gccversion='2.95.3-5 (cygwin special)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=4
alignbytes=8, usemymalloc=y, prototype=define
Linker and Libraries:
ld='ld2', ldflags =' -s -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib /lib
libs=-lgdbm -lcrypt
perllibs=-lcrypt
libc=/usr/lib/libc.a, so=dll, useshrplib=true, libperl=libperl5_6_1.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' -s'
cccdlflags=' ', lddlflags=' -s -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
Built under cygwin
Compiled at Aug 22 2001 01:05:05
@INC:
/usr/lib/perl5/5.6.1/cygwin-multi
/usr/lib/perl5/5.6.1
/usr/lib/perl5/site_perl/5.6.1/cygwin-multi
/usr/lib/perl5/site_perl/5.6.1
/usr/lib/perl5/site_perl
.
--
Per Einar Ellefsen
[EMAIL PROTECTED]