-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hello mod_perl hackers,
Contrary to what I (mis?)understood from the documentation, MP_DEBUG does not allow one to link mod_perl against the debugging libperl.a:
~ $ debugperl Makefile.PL MP_INST_APACHE2=1 MP_APXS=/usr/bin/apxs2 \ ~ MP_APR_CONFIG=/usr/bin/apr-config MP_DEBUG=1 ~ [...] ~ $ grep MODPERL_LDOPTS src/modules/perl/Makefile
MODPERL_LDOPTS = -rdynamic -L/usr/local/lib /usr/lib/perl/5.6.1/auto/DynaLoader/DynaLoader.a - -L/usr/lib/perl/5.6.1/CORE -lperl -ldl -lm -lc -lcrypt
...No -lperld there (not that it would help my case, I need a "-ldebugperl" for Debian's perl-debug packaging anyway). After reading the source, I thought I found a way to trick ExtUtils::Embed into doing what I want. I appended "-- -ldebugperl" onto the Makefile.PL command line, but the result was thus:
MODPERL_LDOPTS = -rdynamic -L/usr/local/lib - -L/usr/lib/perl/5.6.1/CORE -ldebugperl -ldebugperl
And so DynaLoader.a is gone, and of course the resulting mod_perl.so doesn't bootstrap.
How can I link with -ldebugperl without manually fiddling with the Makefile (which I did, and it works great)?
Dominique, I guess we (developers) all have perl built with debug enabled, so we never needed this feature. I suppose you could change the code to check whether libperld exists and link it instead of libperl under MP_DEBUG=1 (and send a patch here)? Please check how mp1 does it, if I remember correctly it did pick libperld under MP_DEBUG=1. If you need help, les us know. Thanks.
-- __________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com