On Wednesday 21 July 2004 21:03, Stas Bekman wrote:
Richard Bauer wrote:
Hi List,
It's my first post.
welcome :)
I'm running a remote dedicated webserver running a RH 7.2. Originally perl5.6.1 was pre-installed (rpm), so I downloaded and installed perl5.8.4. I decided to download some fresh Apache and mod_perl: -Apache 1.3.31 -mod_perl 1.29
When I set an HTML::Mason handler to serve a VirtualHost, httpd logs: [notice] child pid 9943 exit signal Segmentation fault (11)
Note that if the HTML::Mason module is not installed, the httpd does not segfault.
It seems to be a shared lib issue, but I'm not a pro of that. I hope this issue is related to this mailing list and I hope that you will be able to give me some help to solve this problem.
[...]
(gdb) bt #0 0x0809fc4b in XS_Apache__Table_FETCH ()
In case it uses XML modules it could be an EXPAT issue, mentioned here: http://marc.free.net.ph/message/20030904.192959.83632cb7.html
Thank you Stas for your input. I read the link above with a lot of interest and tried to compile mod_perl and Apache without EXPAT. The first attempt did not success, and I worked around re-installing some perl modules. After some hours and a last try, HTML::Mason works fine. :-) I feel that like black magic because I cannot explain why it works.
Not much magic here. It all comes down to the common problem of libraries collision. It's the same problem with conflicting Berkley DB and other libs. When you run an app, you need to make sure that you've one implementation loaded and not two.
I'm not on the mod_perl mailing list, but I saw your recent post in the archives. I'm not sure if you resolved it, but I was having a similar problem recently.
1. Using mod_perl only, everything worked fine.
2. When I add the Mason handler, Apache starts fine, but segfaults on first request.
3. (I'm on FreeBSD, Apache 1.x, most recent Perl.)
I was really puzzled, as I build systems like this frequently, and never had this problem. But, then I realized that I had forgotten to install MM (http://www.ossp.org/pkg/lib/mm/). When I installed MM and rebuilt Apache, the problem disappeared.
I built MM as follows:
fetch ftp://ftp.ossp.org/pkg/lib/mm/mm-1.3.0.tar.gz tar xzf mm-1.3.0.tar.gz cd mm-1.3.0 ./configure --disable-shared make make test make install ./libtool --finish /usr/local/lib
Then, when installing Apache, I used:
setenv EAPI_MM SYSTEM setenv SSL_BASE SYSTEM ./configure --activate-module=src/modules/perl/libperl.a
Hope this might help!
On my system, this lib seems to be installed since a lot of time, so I think it is not the cause of my issue.
What do you think of this?
I don't know. I never had this problem.
Stas, I'd like to ask you another question:
Scenario1:
I configure mod_perl with NO_HTTPD=1, PREP_HTTPD=1 and APACI_ARGS='--disable-rule=EXPAT', after that, make and make install. In the Apache dir, ./configure ... (other mods to be included), make and finally make install.
Result: The server crashes
Scenario2:
I configure mod_perl with DO_HTTPD=1 and APACI_ARGS='--disable-rule=EXPAT', make and make install. In the Apache dir: make install
Result: The server doesn't crash.
What do you think about these two scenarios, does it make sense to you?
It makes perfect sense. In the first scenario you tell Apache to reconfigure itself, completely forgetting the config mod_perl told it to use. The first scenario is by all means invalid.
And finally, how to know if Apache has been compiled with/without expate-lite?
I've never used it myself so I can't tell. But if it's build as a shared lib, you can find that out using ldd(1). If it's statically built you can use nm(1) or even strings(1). May be apxs can be of help too.
-- __________________________________________________________________ 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
-- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html