Hi there, On Thu, 3 Feb 2000, Wang, Pin-Chieh wrote: > Ged, > Thanks much for your help, Please tell me if I asked too many > questions, If you don't I'll keep on ask you questions. After I > said that, here is another question. You aren't asking too many questions, but please forgive me if I can't get to them to answer them as quickly as you would like. > I am building an Apache with Mod_perl under DSO. I thought I did > right, I am using the following parameters for Makefile.PL under > mod_perl-1.21 directory > > APACHE_SRC=../apache_1.3.11/src USE_APACI=1 DO_HTTPD=1 \ > ADD_MODULE=rewrite,so,status,info \ > APACHE_PREFIX=/usr/local/apache_dso \ > PERL_MARK_WHERE=1 EVERYTHING=1 > > I then > Make > Su > Make install > > I then > cd ../apache_1.3.11 > ./configure -enable-module=so -enable-module=info > -prefix=/usr/local/apache_dso > make > su > make install When you write USE_APACI=1, after you have done 'make install' in the mod_perl directory you do not have to build in the Apache directory, mod_perl does it for you. Watch the output of the scripts and the compiler as they run, and you will see what is happening if you are quick. Use control-s to stop the output if you are not quick, then use control-q to restart it. You need to read some more. Have a look especially at `scenario.pod' in the Guide. It builds mod_perl in several different ways, which you can probably manipulate to suit your own needs. Unfortunately I have been ill with 'flu' so my rewrite of this section of the Guide is only just finished today. I can't send it to you because Stas needs to look at it now to make sure I haven't completely screwed it up. All the technical information you need is in the existing version (which I am assuming you now have!), it's just slightly better English after my rewrite. I hope. When we've attended to the English, there will be some more reorganizing. Sorry for the inconvenience... To get mod_perl's Makefile.PL to add your modules you can add lines like this to your Makefile.PL argument list: % /usr/local/bin/perl Makefile.PL \ APACHE_SRC=../apache_1.3.11/src USE_APACI=1 DO_HTTPD=1 USE_DSO=1 \ APACHE_PREFIX=/usr/local/apache_dso \ PERL_MARK_WHERE=1 EVERYTHING=1 \ APACI_ARGS= --enable-module=so, \ --enable-module=info The line in your command to perl Makefile.PL which reads: > APACHE_SRC=../apache_1.3.11/src USE_APACI=1 DO_HTTPD=1 \ tells Makefile.PL to make Apache as well as mod_perl but it does not tell mod_perl to make a DSO binary, that's why I put USE_DSO=1 in my version above. You won't save as much memory as you might think using DSO, and I'd avoid it until there are fewer questions about it. The line in your command which reads: > ./configure -enable-module=so -enable-module=info should I think read: ./configure --enable-module=so --enable-module=info which tells Apache that it is to be linked with the mod_info module and it is to be built ready to load modules dynamically (at run-time, instead of linking them at compile-time) but it does not mean build mod_perl itself as a Dynamically Shared Object. Remember to do 'make clean' in both the mod_perl and the Apache directories before you start again. Read the Guide! Hope this helps. 73, Ged.