You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Stas Bekman <st...@stason.org> on 2003/08/27 22:20:39 UTC

PERL_DL_NONLAZY=1

As mike chamberlain told me over irc, apr-ext/perlio was faling for him 
because of the modperl_perl_gensym not being resolved in APR/PerlIO.so. I 
didn't see that error since on linux by default symbols resolution is lazy and 
since that part of the api wasn't tested I did see the problem. On MacOSX the 
loading is RTLD_NOW (non-lazy) so it detects any missing symbols problems 
immediately.

Luckily DynaLoader allows us to force the non-lazy mode by setting an env var:
PERL_DL_NONLAZY=1. So I suggest to force this env variable on when building 
with MP_MAINTAINER=1. I suppose that it should be added to the autogenerated 
t/TEST and t/SMOKE. and to t/conf/modperl_extra.pl ($ENV{PERL_DL_NONLAZY}=1) 
so it affects the server-side as well as the client-side (normally env var 
aren't propogated to the server).


__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: PERL_DL_NONLAZY=1

Posted by Geoffrey Young <ge...@modperlcookbook.org>.

Stas Bekman wrote:
> As mike chamberlain told me over irc, apr-ext/perlio was faling for him 
> because of the modperl_perl_gensym not being resolved in APR/PerlIO.so. 
> I didn't see that error since on linux by default symbols resolution is 
> lazy and since that part of the api wasn't tested I did see the problem. 
> On MacOSX the loading is RTLD_NOW (non-lazy) so it detects any missing 
> symbols problems immediately.
> 
> Luckily DynaLoader allows us to force the non-lazy mode by setting an 
> env var:
> PERL_DL_NONLAZY=1. So I suggest to force this env variable on when 
> building with MP_MAINTAINER=1. 

good idea.  maintainer mode should have all the flags/warnings/etc we can 
think of.

> I suppose that it should be added to the 
> autogenerated t/TEST and t/SMOKE. and to t/conf/modperl_extra.pl 
> ($ENV{PERL_DL_NONLAZY}=1) so it affects the server-side as well as the 
> client-side (normally env var aren't propogated to the server).

sure.

--Geoff


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org