stas 01/11/15 00:23:40 Modified: . INSTALL.apaci Changes Log: - explain how perl has to be built in order to use DSO without problems (copied from the guide) based on email from Doug. Revision Changes Path 1.8 +36 -0 modperl/INSTALL.apaci Index: INSTALL.apaci =================================================================== RCS file: /home/cvs/modperl/INSTALL.apaci,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- INSTALL.apaci 1999/04/19 20:29:17 1.7 +++ INSTALL.apaci 2001/11/15 08:23:40 1.8 @@ -200,6 +200,42 @@ Objects (DSO). So there is support for DSO in mod_perl now, too. I<BUT THIS IS STILL EXPERIMENTAL, SO BE WARNED!> +=head2 When DSO can be used + +If you want to build C<mod_perl> as DSO you must make sure that Perl +was built with system's native malloc(). If Perl was built with its +own malloc() and C<-Dbincompat5005>, it pollutes the main C<httpd> +program with I<free> and I<malloc> symbols. When C<httpd> restarts +(happens at startup too), any references in the main program to +I<free> and I<malloc> become invalid, and this causes memory leaks and +segfaults. + +Notice that mod_perl's build system warns about this problem. + +With Perl 5.6.0+ this pollution can be prevented with +C<-Ubincompat5005>. or C<-Uusemymalloc> for any version of Perl, but +there's a chance that might hurt performance depending on platform, so +C<-Ubincompat5005> is likely a better choice. + +If you get the following reports with Perl version 5.6.0+: + + % perl -V:usemymalloc + usemymalloc='y'; + % perl -V:bincompat5005 + bincompat5005='define'; + +rebuild Perl with C<-Ubincompat5005>. + +For Perl versions pre-5.6.x, if you get: + + % perl -V:usemymalloc + usemymalloc='y'; + +rebuild Perl with C<-Uusemymalloc>. + +now rebuild mod_perl. + + =head2 Build mod_perl as DSO inside Apache source tree via APACI We already said that the new mod_perl build environment is a hybrid one. What 1.623 +4 -0 modperl/Changes Index: Changes =================================================================== RCS file: /home/cvs/modperl/Changes,v retrieving revision 1.622 retrieving revision 1.623 diff -u -r1.622 -r1.623 --- Changes 2001/09/09 21:56:46 1.622 +++ Changes 2001/11/15 08:23:40 1.623 @@ -10,6 +10,10 @@ =item 1.26_01-dev +INSTALL.apaci: added an explanation of how perl has to be built in +order to use DSO without problems (copied from the guide) based on +email from Doug. [Stas Bekman <[EMAIL PROTECTED]>] + warn if Perl is configured with -Duseshrplib and a libperl.so is found in a place where it should not be, example: /lib /usr/lib or /usr/local/lib