This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Anyone got mod_perl working?


Hi Gerrit

thanks for your notes. I neglected to mention that I did symbolically link
the liberl.a library. Unfortunately, I think I may have hit the wall in
getting Apache::Request working, and according to one note that I've found
on the web
(http://www.mail-archive.com/modperl@apache.org/msg21136.html), it may not
be possible:

"However, I think that building mod_perl under Cygwin is a not a good
idea (yet). For example, you won't be able to build libapreq
(Apache::Request):
it requires some symbols from apache and under win32 it's impossible
to link .dll to symbols in .exe which loads this .dll.
That's why win32 apache is split into Apache.exe and ApacheCore.dll --
it allows modules to link with ApacheCore.dll. Unfortunately,
Cygwin builds single httpd.exe binary and libapreq fails to link
to ap_table_add, ap_getword and many other symbols residing in apache
binary."

If you have any other ideas, please let me know :)

Dan

-----Original Message-----
From: cygwin-owner@cygwin.com [mailto:cygwin-owner@cygwin.com]On Behalf
Of Gerrit P. Haase
Sent: Saturday, January 05, 2002 4:54 AM
To: Dan Horne
Cc: cygwin@cygwin.com
Subject: Re: Anyone got mod_perl working?


Hallo Dan,

Am 2002-01-02 um 23:07 schriebst du:

> thanks to those who replied. I have something working, but I'm not sure if
> it will come back to bite me later on.

I figured out that Apache 1.3.2x is really slow on Cygwin if compared with
Apache 2.x. but I didn't tried to build Apache2 with mod_perl yet.

> After I've had a play for a while, I may come across a few problems -
which
> may arise from the way I've installed things, or may be from my code. To
try
> and eliminate the former, please let me know if I did anything fatally
> wrong.

No, not a mistake of you, the httpd.conf for the mod_perl tests doesn't work
OOTB on Cygwin.

> Notes:
> * After scouring the net, I found someone who mentioned that they rarely
got
> "make test" working, but the installation always ran. So after continually
> editing scripts and then hitting the next problem, I decided to skip the
> testing.

I have it working, it it tells me "All tests successful, 8 tests skipped."
at the end;)  I my previous mail I described the two changes I made to the
test.conf file.

> * I avoided the DSO route as it just seemed to be giving me grief

> 1. Install (everything untarred in /tmp):

> in /tmp/mod_perl-1.26

I used a newer mod_perl version from CVS, but there are no greater changes.

>    $ perl Makefile.PL USE_APACI=1 EVERYTHING=1
> PERL_EXTRA_CFLAGS=-DUSEIMPORTLIB DO_HTTPD=1 APACHE_SRC=../apache_1.3.22

perl Makefile.PL \
 EVERYTHING=1 \
 APACHE_SRC=../apache_$APACHE_VER/src \
 USE_APACI=1 \
 PREP_HTTPD=1 \
 DO_HTTPD=1 2>&1 | tee $CWD/log.configure-mod_perl


> in /tmp/apache_1.3.22

I used Apache 1.3.20 and I needed to modify the Apache Makefile
because libperl5_6_1.a isn't searched only libperl.a:

So I need to do this:
perl -i.bak -p -e 's#-lmm#-lmm -lperl5_6_1#;'
$TMP/apache_$APACHE_VER/src/Makefile

or something like that before configuring everything:
ln -s /lib/perl5/5.6.1/cygwin-multi/CORE/libperl5_6_1.a /lib/libperl.a


>     a) In the "aliases" section, I entered:

>        Alias /perl/ "/var/www/perl/"

>        <Directory "/var/www/perl">
>           Options Indexes FollowSymLinks MultiViews
>           AllowOverride None
>           Order allow,deny
>           Allow from all
>        </Directory>

>     b) Then add the following directive - is this correct?

>        <IfModule mod_perl.c>
>          <Location /perl>
>            SetHandler perl-script
>            PerlHandler Apache::Registry
>            Options +ExecCGI
>          </Location>
>        </IfModule>

Looks ok.
I used this for the beginning:
<IfModule mod_perl.c>

    <Location /perl>
        SetHandler      perl-script
        PerlHandler     Apache::Registry
        Options         +ExecCGI
        PerlSendHeader  On
    </Location>

</IfModule>

>     c) restart apache


> 3. Test:

> In /var/www/perl, create test.pl as is in Stas Beckman's mod_perl Guide:

>     print "Content-type
>     print "Server's environment\n";
>     foreach ( keys %ENV)
>     {
>        print "$_\t$ENV{$_}\n";
>     }

> I had to set the permissions to 755.

> The result in my browser:

>     SERVER_SOFTWARE     Apache/1.3.22 (Cygwin) mod_perl/1.26
>     SERVER_ADMIN        dhorne@DAN-NOTEBOOK
>     REMOTE_ADDR 192.168.1.3
>     DOCUMENT_ROOT       /usr/local/apache/htdocs
>     REQUEST_URI         /perl/test.pl
>     REQUEST_METHOD      GET
>     SERVER_PORT         8080

Seems to work;)

Gerrit
--
=^..^=                                        mailto:gp@familiehaase.de


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/





--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]