Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: [...] My mistake was that i removed perl, and so everything which has been previously configured with default perl version was broken and unable to work with the new perl installation i made... for the future, you can always install perl to a special directory (e.g. $HOME/perl and use that at least to verify that your problem is the perl). When you do that, you don't disrupt the rest of the system. I know mandrake linux heavily relies on perl it provides for almost everything. So I never touch it, but compile my own perl under ~/perl/ and use those exclusively for mod_perl (I have 36 perl builds :) Anyway, i am really happy that everything is working now!!! Glad to hear that it worked, Martin. P.S.: Due to my *bad* english, i bet you didnt understand anything i wrote... I will not think you are rude if you ask me for some more explanations :) Dont hesitate if you have a new idea which can help others i stay tunned to mailing list :) Both, your English and the explanations were just fine, Martin. Ne vous inquiétez pas :) -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Hello here to everybody who helped me when i was in troubles... I write this just to tell you where i am now, i hope it will help you to understand something new in the "linker" (???) subject. So, my problem was, that i was unable to compile modperl 2 with apache 2. Not exactly will you say, i was able to compile it, but apache was unable to start and load the module, due to an apparent "linker" broken problem. So, i tryed the following: * I uninstalled perl 5 with a dpkg FORCE stuff, to make sure nothing else will be missing. * I compiled my own Perl 5 release, and installed it... Had make some few symlinks, and MODPERL was able to WORK!!! I was happy. Really happy. BUT... I have also a customized qmail installation (i am less a newbee with qmail than with mod_perl). And in this customized qmail install, i was having a Perl script, which role was to replace the "queue" function of my mail server (e.g. scanning for viruses, spam, etc before delivering mail). Here was the big problem. This script began to bug a lot (I saw in the logs that some subroutines was missing for example...). Guys i know you are mod_perl specialist, understand here i am just telling you EVERYTHING to make you able to understand stuffs i didnt understand :)... Then i tryed to apt-get dist-upgrade (From Woody to Sarge). Worked perfectly, 23 packages all new freshed, but nothing solved with perl. You know, i am a sort of psycho, i cant sleep knowing some of my computer is a mess... I am a kind of maniac, i like to know everything happening inside of my computers :) So i get rid of my Debian. Formatted my HDD, ZAP! Installed Debianagain without ANY packages, directly updated to Sarge, and then installed apache qmail mysql openssl etc... Now, i just finished installing mod perl and it is working. I just had some tricks to do, while compiling mod_perl it told me stuff like 'Your installation is made against libgdbm' (i dont remember exactly sorry) so i had to symlink some .so to others. The point here is that everything is just FINE now!!! My explanation: As i told you, i am sort of newbee to most stuffs under Linux. I think i had made a mistake somewhere unfindable in my old DEBIAN installation, so the mod_perl problem was maybe my fault. But i understood few stuffs when i was trying to solve the problem, before formatting and installing: I uninstalled Perl and mod_perl linked properly. So you were right guys, the linker was maybe broken, due to an improper perl installation. My mistake was that i removed perl, and so everything which has been previously configured with default perl version was broken and unable to work with the new perl installation i made... Anyway, i am really happy that everything is working now!!! Thank you a lot! Pierre P.S.: Due to my *bad* english, i bet you didnt understand anything i wrote... I will not think you are rude if you ask me for some more explanations :) Dont hesitate if you have a new idea which can help others i stay tunned to mailing list :) -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Joe Orton wrote: On Wed, Oct 13, 2004 at 05:02:30PM -0400, Stas Bekman wrote: Joe Orton wrote: If -lperl was specified on the link line and ldd does not show a dependency on libperl.so.N, then barring a complete linker fubar, it must be the case that a libperl.a was linked statically. I doubt that this is the case, because I asked Martin to run nm on mod_perl.so and perl symbols were unresolved. Please see: http://article.gmane.org/gmane.comp.apache.mod-perl/15266 Yes, I read the whole thread, this seems consistent with linking against a bogus libperl.a on the system (maybe from a different version of Perl) which doesn't define all the symbols which mod_perl needs. That seems far more likely than the linker being so borked it ignores -l flags. Thanks Joe! Martin, so may be you could try then finding all libperl.a occurences on your system, moving them to some hidden place (e.g. /tmp) and try to relink mod_perl.so as I've explained a few emails earlier... or upgrade the linker :) -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
On Wed, Oct 13, 2004 at 05:02:30PM -0400, Stas Bekman wrote: > Joe Orton wrote: > >If -lperl was specified on the link line and ldd does not show a > >dependency on libperl.so.N, then barring a complete linker fubar, it > >must be the case that a libperl.a was linked statically. > > I doubt that this is the case, because I asked Martin to run nm on > mod_perl.so and perl symbols were unresolved. Please see: > http://article.gmane.org/gmane.comp.apache.mod-perl/15266 Yes, I read the whole thread, this seems consistent with linking against a bogus libperl.a on the system (maybe from a different version of Perl) which doesn't define all the symbols which mod_perl needs. That seems far more likely than the linker being so borked it ignores -l flags. joe -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Joe Orton wrote: On Wed, Oct 13, 2004 at 08:26:43AM -0400, Stas Bekman wrote: Joe Orton wrote: This problem is probably caused by a bogus libperl.a on your system somewhere. What does: ls -l /usr/lib/perl/5.6.1/CORE/libperl.* /usr/lib/libperl.* \ /usr/local/lib/libperl.* give? IMHO, it's libperl.so the linker is after, not libperl.a, since it's -rdynamic -lperl. -rdynamic is an obsolete gcc alias for -Wl,--export-dynamic, and has no effect on whether the linker uses static or dynamically loaded libraries for -l options. (in fact it's completely redundant when linking a shared object like mod_perl as far as I'm aware) We just use whatever flags perl gives us for linking (similar to apr-config ...). If -lperl was specified on the link line and ldd does not show a dependency on libperl.so.N, then barring a complete linker fubar, it must be the case that a libperl.a was linked statically. I doubt that this is the case, because I asked Martin to run nm on mod_perl.so and perl symbols were unresolved. Please see: http://article.gmane.org/gmane.comp.apache.mod-perl/15266 -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
On Wed, Oct 13, 2004 at 08:26:43AM -0400, Stas Bekman wrote: > Joe Orton wrote: > >This problem is probably caused by a bogus libperl.a on your system > >somewhere. What does: > > > >ls -l /usr/lib/perl/5.6.1/CORE/libperl.* /usr/lib/libperl.* \ > > /usr/local/lib/libperl.* > > > >give? > > IMHO, it's libperl.so the linker is after, not libperl.a, since it's > -rdynamic -lperl. -rdynamic is an obsolete gcc alias for -Wl,--export-dynamic, and has no effect on whether the linker uses static or dynamically loaded libraries for -l options. (in fact it's completely redundant when linking a shared object like mod_perl as far as I'm aware) If -lperl was specified on the link line and ldd does not show a dependency on libperl.so.N, then barring a complete linker fubar, it must be the case that a libperl.a was linked statically. joe -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Joe Orton wrote: On Mon, Oct 11, 2004 at 11:47:33PM +0200, MARTIN Pierre wrote: Please do: cd src/modules/perl/ rm mod_perl.so make -f Makefile.modperl Here we go: /data/misc/mod_perl-1.99_16/src/modules/perl# rm mod_perl.so /data/misc/mod_perl-1.99_16/src/modules/perl# make -f Makefile.modperl rm -f mod_perl.so cc -shared -L/usr/local/lib \ ... ags.lo modperl_xsinit.lo -rdynamic -L/usr/local/lib /usr/lib/perl/5.6.1/auto/D ynaLoader/DynaLoader.a -L/usr/lib/perl/5.6.1/CORE -lperl -ldl -lm -lc -lcryp t \ -o mod_perl.so : mod_perl.so This problem is probably caused by a bogus libperl.a on your system somewhere. What does: ls -l /usr/lib/perl/5.6.1/CORE/libperl.* /usr/lib/libperl.* \ /usr/local/lib/libperl.* give? IMHO, it's libperl.so the linker is after, not libperl.a, since it's -rdynamic -lperl. -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
On Mon, Oct 11, 2004 at 11:47:33PM +0200, MARTIN Pierre wrote: > > Please do: > > cd src/modules/perl/ > > rm mod_perl.so > > make -f Makefile.modperl > > Here we go: > > /data/misc/mod_perl-1.99_16/src/modules/perl# rm mod_perl.so > /data/misc/mod_perl-1.99_16/src/modules/perl# make -f Makefile.modperl > rm -f mod_perl.so > cc -shared -L/usr/local/lib \ ... > ags.lo modperl_xsinit.lo -rdynamic -L/usr/local/lib > /usr/lib/perl/5.6.1/auto/D > ynaLoader/DynaLoader.a -L/usr/lib/perl/5.6.1/CORE -lperl -ldl -lm -lc -lcryp > t \ > -o mod_perl.so > : mod_perl.so This problem is probably caused by a bogus libperl.a on your system somewhere. What does: ls -l /usr/lib/perl/5.6.1/CORE/libperl.* /usr/lib/libperl.* \ /usr/local/lib/libperl.* give? joe -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Hello Nick, > If you want mod_perl for Apache2 in Debian, I'd suggest you use a > packaged > version; it's a lot easier. My problem is, that i CANT get the debian package because i compiled & installed apache manualy. Few weeks ago i tryed to override some debian dependency packages, and the result was that my system was a wreck. So i m kind of affraid to do it again, i think i will follow Stas advices and first give a try to the GCC linker, which appear to be dead. > mod_perl for apache2 in Debian is in the package libapache2-mod-perl2, > which is in testing and unstable distributions. To install libapache2-mod-perl2, debian tells me to install apache-common, apache, and so on... > If you really need to use woody for some reason, I'd suggest that you > grab the sources for the testing version of the package, and work from > there. That way, you will have a list of the other packages you need in > order to build it, and any debian-specific workarounds or similar will > be in-place. You will also get the benefit that at the end of it all, > you'll end up with a package that can easily be installed onto multiple > servers. The point is i don't have any choice but woody, cause my CD burner is dead, and Woody is the only distrib that can suit for a server i have on CD (i also have mandrake 9.2 but now i prefer debian :) ) > You may find that you end up needing a whole chain of backports of more > recent versions of things in order to make it work. In that case, I'd > consider using the testing distribution. You won't (yet) get security > updates reliably, but that is being worked on, as testing is going to > become stable fairly soon. And there are a whole lot of other goodies > in testing that aren't in stable -- perl 5.8 and lots more perl modules > that weren't previously packaged, for example. And gcc 3.3... That is right, i didnt thought about that. My GCC is 2.95.4, do you think it can be why the linker appears as broken? Thank you for help! Pierre -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
> Hi Pierre, Hello William, > I run Apache with Debian and have had > troubles in the past with compiling mod_perl due to having two copies of > libperl.so[1]; I think this would more likely be the case if you have > compiled Perl yourself. We discussed about all this with Stas and we arrived at the conclusion that my GCC linker should be broken. I didn't compile perl manualy, i used the debian package. So i am going to upgrade my Linker program, and i will tell you guys if it worked... Thank you, Pierre -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Hi Pierre, You're in the right place. I run Apache with Debian and have had troubles in the past with compiling mod_perl due to having two copies of libperl.so[1]; I think this would more likely be the case if you have compiled Perl yourself. William [1] http://mathforum.org/epigone/modperl/percroogrum/[EMAIL PROTECTED] -- Knowmad Services Inc. http://www.knowmad.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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
On 12/10/2004, at 11:46 AM, MARTIN Pierre wrote: I think your linker is broken. I say that because it included the linking directives: -L/usr/lib/perl/5.6.1/CORE -lperl but the resulting mod_perl.so doesn't show it up. It should have complained if it didn't find it. Try upgrading your linker (cc) and try rebuilding mod_perl again. Okay, maybe you know the name of the package i have to search for? I hope this thread ends here, it would mean my problem does too... If not, we will talk again soon! :O) Anyway i am going to find this, do it, and whatever happens i'll give you feedback... Thank you VERY MUCH, it was really nice from you to help me! If you want mod_perl for Apache2 in Debian, I'd suggest you use a packaged version; it's a lot easier. mod_perl for apache2 in Debian is in the package libapache2-mod-perl2, which is in testing and unstable distributions. If you really need to use woody for some reason, I'd suggest that you grab the sources for the testing version of the package, and work from there. That way, you will have a list of the other packages you need in order to build it, and any debian-specific workarounds or similar will be in-place. You will also get the benefit that at the end of it all, you'll end up with a package that can easily be installed onto multiple servers. You may find that you end up needing a whole chain of backports of more recent versions of things in order to make it work. In that case, I'd consider using the testing distribution. You won't (yet) get security updates reliably, but that is being worked on, as testing is going to become stable fairly soon. And there are a whole lot of other goodies in testing that aren't in stable -- perl 5.8 and lots more perl modules that weren't previously packaged, for example. And gcc 3.3... Cheers, Nick -- Nick Phillips / +64 3 479 4195 / [EMAIL PROTECTED] # these statements are my own, not those of the University of Otago -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: I think your linker is broken. I say that because it included the linking directives: -L/usr/lib/perl/5.6.1/CORE -lperl but the resulting mod_perl.so doesn't show it up. It should have complained if it didn't find it. Try upgrading your linker (cc) and try rebuilding mod_perl again. Okay, maybe you know the name of the package i have to search for? I'm not a debian user, so I'm not sure how you look for it. On rpm based system I use 'urpmf cc'. I think debian is using some apt-foo tool. May be if you install gcc 3.x it'll go away. I hope this thread ends here, it would mean my problem does too... If not, we will talk again soon! :O) Anyway i am going to find this, do it, and whatever happens i'll give you feedback... Thank you VERY MUCH, it was really nice from you to help me! You are welcome, Martin. I hope it gets resolved after you upgrade the linker package. -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
> I think your linker is broken. I say that because it included the linking > directives: > >-L/usr/lib/perl/5.6.1/CORE -lperl > > but the resulting mod_perl.so doesn't show it up. It should have > complained if it didn't find it. Try upgrading your linker (cc) and try > rebuilding mod_perl again. Okay, maybe you know the name of the package i have to search for? I hope this thread ends here, it would mean my problem does too... If not, we will talk again soon! :O) Anyway i am going to find this, do it, and whatever happens i'll give you feedback... Thank you VERY MUCH, it was really nice from you to help me! Pierre -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: Please do: cd src/modules/perl/ rm mod_perl.so make -f Makefile.modperl Here we go: /data/misc/mod_perl-1.99_16/src/modules/perl# rm mod_perl.so /data/misc/mod_perl-1.99_16/src/modules/perl# make -f Makefile.modperl rm -f mod_perl.so cc -shared -L/usr/local/lib \ [...] -rdynamic -L/usr/local/lib /usr/lib/perl/5.6.1/auto/D ynaLoader/DynaLoader.a -L/usr/lib/perl/5.6.1/CORE -lperl -ldl -lm -lc -lcryp t \ -o mod_perl.so : mod_perl.so But maybe there was something i didnt understand, "make -f Makefile.modperl" has to be done in the "root" folder of the sources, or in the /source_folder/src/modules/perl folder? I dit it in the /src/modules/perl folder... You did the right thing. I think your linker is broken. I say that because it included the linking directives: -L/usr/lib/perl/5.6.1/CORE -lperl but the resulting mod_perl.so doesn't show it up. It should have complained if it didn't find it. Try upgrading your linker (cc) and try rebuilding mod_perl again. Don't worry. I don't think it has anything to do with your level of expertise in linux. It should just work. Let's just continue :) Between you and me, my first time on a mailing list, i didn't know it was existing, it is really helpfull. It certainly is ;) Just a question, is there a way to access ALL this mailing list archive? For example, before asking you, is there a way for me to search in it / does google indexes it? Here there are: http://perl.apache.org/maillist/modperl.html#Searchable_Archives This page is linked from every page at http://perl.apache.org/, which I hope you are familiar with :) And yes, it's a good idea to peruse the list's archives before asking here, but in your particular case I don't recall this problem reported here before. But do search anyway, in case my memory fails me. -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
> Please do: > cd src/modules/perl/ > rm mod_perl.so > make -f Makefile.modperl Here we go: /data/misc/mod_perl-1.99_16/src/modules/perl# rm mod_perl.so /data/misc/mod_perl-1.99_16/src/modules/perl# make -f Makefile.modperl rm -f mod_perl.so cc -shared -L/usr/local/lib \ \ mod_perl.lo modperl_interp.lo modperl_tipool.lo modperl_log.lo modperl_config.lo modperl_cmd.lo modperl_options.lo modperl_callback.lo modperl_handler.lo modper l_gtop.lo modperl_util.lo modperl_io.lo modperl_io_apache.lo modperl_filter.lo m odperl_bucket.lo modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo modperl_perl_pp.lo modperl _sys.lo modperl_module.lo modperl_svptr_table.lo modperl_const.lo modperl_consta nts.lo modperl_apache_compat.lo modperl_error.lo modperl_debug.lo modperl_common _util.lo modperl_common_log.lo modperl_hooks.lo modperl_directives.lo modperl_fl ags.lo modperl_xsinit.lo -rdynamic -L/usr/local/lib /usr/lib/perl/5.6.1/auto/D ynaLoader/DynaLoader.a -L/usr/lib/perl/5.6.1/CORE -lperl -ldl -lm -lc -lcryp t \ -o mod_perl.so : mod_perl.so But maybe there was something i didnt understand, "make -f Makefile.modperl" has to be done in the "root" folder of the sources, or in the /source_folder/src/modules/perl folder? I dit it in the /src/modules/perl folder... > Don't worry. I don't think it has anything to do with your level of > expertise in linux. It should just work. Let's just continue :) Between you and me, my first time on a mailing list, i didn't know it was existing, it is really helpfull. Just a question, is there a way to access ALL this mailing list archive? For example, before asking you, is there a way for me to search in it / does google indexes it? Pierre -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: what happens if you do: nm src/modules/perl/mod_perl.so | grep PL_ U PL_curcop OK, so we now know that perl wasn't linked statically. If it was it'd have been shown as resolved (usually T instead of U) and this: ldd -r src/modules/perl/mod_perl.so OUCH Output is too long i cant get all, ( i am connected to the bogus machine via SSH) undefined symbol: apr_table_setn(src/modules/perl/mod_perl.so) undefined symbol: PL_gensym (src/modules/perl/mod_perl.so) OK, that means that something went wrong during the linking stage, as libperl.so wasn't linked against mod_perl.so. Please do: cd src/modules/perl/ rm mod_perl.so make -f Makefile.modperl and paste the output No worries, we will figure it out :) The point is that i am a newbee under linux, i am using it maybe 6-8 months, so i don't want to make you waste your time if the problem is my fault, if you haven't see this problem yet, dont waste your time for me, it should be because of a mistake i have made :O) Don't worry. I don't think it has anything to do with your level of expertise in linux. It should just work. Let's just continue :) -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
> what happens if you do: >nm src/modules/perl/mod_perl.so | grep PL_ U PL_curcop U PL_curinterp U PL_curpad U PL_curstack U PL_curstackinfo U PL_curstash U PL_defoutgv U PL_defstash U PL_diehook U PL_egid U PL_endav U PL_envgv U PL_errgv U PL_euid U PL_gensym U PL_gid U PL_incgv U PL_localizing U PL_markstack_max U PL_markstack_ptr U PL_modglobal U PL_na U PL_op U PL_origenviron U PL_patchlevel U PL_perl_destruct_level U PL_ppaddr U PL_rs U PL_scopestack_ix U PL_stack_base U PL_stack_max U PL_stack_sp U PL_stderrgv U PL_sv_undef U PL_sv_yes U PL_tainted U PL_tainting U PL_tmps_floor U PL_tmps_ix U PL_uid U PL_vtbl_env U PL_vtbl_envelem > and this: > >ldd -r src/modules/perl/mod_perl.so OUCH Output is too long i cant get all, ( i am connected to the bogus machine via SSH) undefined symbol: apr_table_setn(src/modules/perl/mod_perl.so) undefined symbol: PL_gensym (src/modules/perl/mod_perl.so) undefined symbol: PL_euid (src/modules/perl/mod_perl.so) undefined symbol: PL_envgv (src/modules/perl/mod_perl.so) undefined symbol: PL_na (src/modules/perl/mod_perl.so) undefined symbol: PL_sv_yes (src/modules/perl/mod_perl.so) undefined symbol: PL_errgv (src/modules/perl/mod_perl.so) undefined symbol: PL_curstackinfo (src/modules/perl/mod_perl.so) undefined symbol: PL_curstash (src/modules/perl/mod_perl.so) undefined symbol: PL_modglobal (src/modules/perl/mod_perl.so) undefined symbol: PL_defoutgv (src/modules/perl/mod_perl.so) undefined symbol: PL_stack_base (src/modules/perl/mod_perl.so) undefined symbol: PL_tainted(src/modules/perl/mod_perl.so) undefined symbol: PL_stack_sp (src/modules/perl/mod_perl.so) undefined symbol: PL_curcop (src/modules/perl/mod_perl.so) undefined symbol: PL_vtbl_envelem (src/modules/perl/mod_perl.so) undefined symbol: PL_tmps_floor (src/modules/perl/mod_perl.so) undefined symbol: PL_curpad (src/modules/perl/mod_perl.so) undefined symbol: PL_scopestack_ix (src/modules/perl/mod_perl.so) undefined symbol: PL_op (src/modules/perl/mod_perl.so) undefined symbol: apr_pool_cleanup_null (src/modules/perl/mod_perl.so) undefined symbol: PL_tainting (src/modules/perl/mod_perl.so) undefined symbol: PL_incgv (src/modules/perl/mod_perl.so) undefined symbol: PL_vtbl_env (src/modules/perl/mod_perl.so) undefined symbol: Perl_gv_stashpv (src/modules/perl/mod_perl.so) undefined symbol: perl_get_sv (src/modules/perl/mod_perl.so) undefined symbol: Perl_croak(src/modules/perl/mod_perl.so) undefined symbol: ap_log_rerror (src/modules/perl/mod_perl.so) undefined symbol: Perl_sv_free (src/modules/perl/mod_perl.so) undefined symbol: Perl_markstack_grow (src/modules/perl/mod_perl.so) undefined symbol: ap_hook_post_config (src/modules/perl/mod_perl.so) undefined symbol: Perl_save_int (src/modules/perl/mod_perl.so) undefined symbol: ap_scan_script_header_err_strs (src/modules/perl/mod_perl.so) undefined symbol: Perl_sv_setiv (src/modules/perl/mod_perl.so) undefined symbol: Perl_sv_unmagic (src/modules/perl/mod_perl.so) undefined symbol: Perl_mg_find (src/modules/perl/mod_perl.so) undefined symbol: Perl_av_store (src/modules/perl/mod_perl.so) undefined symbol: apr_pool_create_ex(src/modules/perl/mod_perl.so) undefined symbol: apr_bucket_shared_destroy (src/modules/perl/mod_perl.so) undefined symbol: apr_table_overlay (src/modules/perl/mod_perl.so) undefined symbol: Perl_av_len (src/modules/perl/mod_perl.so) undefined symbol: Perl_av_pop (src/modules/perl/mod_perl.so) undefined symbol: Perl_sv_setuv (src/modules/perl/mod_perl.so) undefined symbol: ap_get_brigade(src/modules/perl/mod_perl.so) undefined symbol: Perl_newGVgen (src/modules/perl/mod_perl.so) undefined symbol: ap_hook_handler (src/modules/perl/mod_perl.so) undefined symbol: apr_strerror (src/modules/perl/mod_perl.so) undefined symbol: Perl_pop_scope(src/modules/perl/mod_perl.so) undefined symbol: ap_hook_check_user_id (src/modules/perl/mod_perl.so) undefined symbol: apr_brigade_flatten (src/modules/perl/mod_perl.so) undefined symbol: Perl_av_clear (src/modules/perl/mod_perl.so) undefined symbol: ap_register_output_filter (src/modules/perl/mod_perl.so) undefined symbol: Perl_save_scalar (src/modules/perl/mod_perl.so) undefined symbol: Perl_save_sptr(src/modules/perl/mod_perl.so) undefined symbol: ap_single_module_configure (src/modules/perl/mod_perl.so) undefined symbol: Perl_av_shift (src/modules/perl/mod_perl.so) undefined symbol: apr_table_clear (src/modules/perl/mod_perl.so) undefined symbol: ap_check_cmd_context (src/
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: Hmm, can you please paste the arguments you passed to perl Makefile.PL? I can't figure out why the above output doesn't show a link to libperl.so To configure i just did: perl Makefile.PL MP_AP_PREFIX=/usr/local/apache2 MP_INST_APACHE2=1 Is there a step before that i forgot? No, no, it's fine. /data/misc/mod_perl-1.99_16# ldd src/modules/perl/mod_perl.so Gives me the same i think: libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4002d000) libdl.so.2 => /lib/libdl.so.2 (0x40033000) libm.so.6 => /lib/libm.so.6 (0x40037000) libc.so.6 => /lib/libc.so.6 (0x40058000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x40175000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x8000) I don't understand why there is no libperl.so in this output. e.g. on my machine (linux/mdk) I get: ldd src/modules/perl/mod_perl.so linux-gate.so.1 => (0xe000) libperl.so => /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/CORE/libperl.so (0x4003d000) libnsl.so.1 => /lib/libnsl.so.1 (0x401b9000) libdl.so.2 => /lib/libdl.so.2 (0x401cc000) libm.so.6 => /lib/tls/libm.so.6 (0x401cf000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x401f2000) libutil.so.1 => /lib/libutil.so.1 (0x4022) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40223000) libc.so.6 => /lib/tls/libc.so.6 (0x40234000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x8000) what happens if you do: nm src/modules/perl/mod_perl.so | grep PL_ and this: ldd -r src/modules/perl/mod_perl.so I am totally lost :) No worries, we will figure it out :) I can try to "uninstall" PERL 5 from my DEBIAN, but i think it is too difficult for me because of all the dependency in my system :( Do you think that a PERL reinstallation should solve it? We will get to it later... for now please answer my questions from above. -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
> Hmm, can you please paste the arguments you passed to perl Makefile.PL? I > can't figure out why the above output doesn't show a link to libperl.so To configure i just did: perl Makefile.PL MP_AP_PREFIX=/usr/local/apache2 MP_INST_APACHE2=1 Is there a step before that i forgot? /data/misc/mod_perl-1.99_16# ldd src/modules/perl/mod_perl.so Gives me the same i think: libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4002d000) libdl.so.2 => /lib/libdl.so.2 (0x40033000) libm.so.6 => /lib/libm.so.6 (0x40037000) libc.so.6 => /lib/libc.so.6 (0x40058000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x40175000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x8000) > > * "locate libperl.so*" (i just made an updatedb to make sure results will > > be nice) gives me: > > /usr/lib/libperl.so > > /usr/lib/libperl.so.5.6 > > /usr/lib/libperl.so.5.6.1 > > The perl you've quoted seems to live in /usr/local/share/perl/5.6.1, are > you sure there is no other libperl.so on your system? Nope, i think that it is all that i have matching the name libperl.so, i just tryed with "locate *libperl*" and it does: /data/misc/mod_perl-1.29/apaci/libperl.module /usr/doc/libperl5.6 /usr/lib/libperl.so /usr/lib/libperl.so.5.6 /usr/lib/libperl.so.5.6.1 /usr/share/defoma/libperl-file.pl /usr/share/defoma/libperl-hint.pl /usr/share/doc/libperl5.6 /var/lib/dpkg/info/libperl5.6.list /var/lib/dpkg/info/libperl5.6.md5sums /var/lib/dpkg/info/libperl5.6.postinst /var/lib/dpkg/info/libperl5.6.postrm /var/lib/dpkg/info/libperl5.6.prerm /var/lib/dpkg/info/libperl5.6.shlibs So no other .so on this list i didnt mention before... I am totally lost :) I can try to "uninstall" PERL 5 from my DEBIAN, but i think it is too difficult for me because of all the dependency in my system :( Do you think that a PERL reinstallation should solve it? Pierre. -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: Hello again, Here are the needed informations, this time CCed to all the mailing list: [one more tip: when you reply on the top (which is not the best thing to do) please don't quote the whole previous email. The best technique is to remove all irrelevant parts of the original email and just reply under the quoted part you reply to] * "make test" gives me no errors until here: /usr/local/apache2/bin/httpd -d /data/misc/mod_perl-1.99_16/t -f /data/misc/mod_perl-1.99_16/t/conf/httpd.conf -D APACHE2 using Apache/2.0.52 (prefork MPM) waiting 120 seconds for server to start: .Syntax error on line 12 of /data/misc/mod_perl-1.99_16/t/conf/httpd.conf: Cannot load /data/misc/mod_perl-1.99_16/src/modules/perl/mod_perl.so into server: /data/misc/mod_perl-1.99_16/src/modules/perl/mod_perl.so: undefined symbol: PL_localizing [ error] server has died with status 1 (t/logs/error_log wasn't created, start the server in the debug mode) make: *** [run_tests] Error 143 OK, thanks. * The output of "ldd /usr/local/apache2/modules/mod_perl.so" is: libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4002d000) libdl.so.2 => /lib/libdl.so.2 (0x40033000) libm.so.6 => /lib/libm.so.6 (0x40037000) libc.so.6 => /lib/libc.so.6 (0x40058000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x40175000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x8000) Hmm, can you please paste the arguments you passed to perl Makefile.PL? I can't figure out why the above output doesn't show a link to libperl.so what does it show when you do: cd /data/misc/mod_perl-1.99_16/ ldd src/modules/perl/mod_perl.so * "locate libperl.so*" (i just made an updatedb to make sure results will be nice) gives me: /usr/lib/libperl.so /usr/lib/libperl.so.5.6 /usr/lib/libperl.so.5.6.1 The perl you've quoted seems to live in /usr/local/share/perl/5.6.1, are you sure there is no other libperl.so on your system? But i think the first 2 items are symlinks pointing to /usr/lib/libperl.so.5.6.1, so in theory no problem... Right > *** Packages of interest status: > > Apache::Request: - > CGI: 2.752 > LWP: - > mod_perl : 1.9915, 1.9916 It's also strange that you have both versions installed. That probably means that you've installed 1.9916 with MP_INST_APACHE2=1 and previously 1.99_15 without, so now you have two versions and that could be the possible cause of the problem. But it shouldn't affect the test suite. -- __ Stas BekmanJAm_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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
Hello again, Here are the needed informations, this time CCed to all the mailing list: * "make test" gives me no errors until here: /usr/local/apache2/bin/httpd -d /data/misc/mod_perl-1.99_16/t -f /data/misc/mod_perl-1.99_16/t/conf/httpd.conf -D APACHE2 using Apache/2.0.52 (prefork MPM) waiting 120 seconds for server to start: .Syntax error on line 12 of /data/misc/mod_perl-1.99_16/t/conf/httpd.conf: Cannot load /data/misc/mod_perl-1.99_16/src/modules/perl/mod_perl.so into server: /data/misc/mod_perl-1.99_16/src/modules/perl/mod_perl.so: undefined symbol: PL_localizing [ error] server has died with status 1 (t/logs/error_log wasn't created, start the server in the debug mode) make: *** [run_tests] Error 143 * The output of "ldd /usr/local/apache2/modules/mod_perl.so" is: libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4002d000) libdl.so.2 => /lib/libdl.so.2 (0x40033000) libm.so.6 => /lib/libm.so.6 (0x40037000) libc.so.6 => /lib/libc.so.6 (0x40058000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x40175000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x8000) * "locate libperl.so*" (i just made an updatedb to make sure results will be nice) gives me: /usr/lib/libperl.so /usr/lib/libperl.so.5.6 /usr/lib/libperl.so.5.6.1 But i think the first 2 items are symlinks pointing to /usr/lib/libperl.so.5.6.1, so in theory no problem... Thank you! Pierre - Original Message - From: "Stas Bekman" <[EMAIL PROTECTED]> To: "MARTIN Pierre" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Monday, October 11, 2004 7:33 PM Subject: Re: [mp2] & Apache2: undefined symbol: PL_localizing > MARTIN Pierre wrote: > > Hello all, > > I am totally new to mod_perl mailing list so maybe i am not posting in the right place. > > You are posting it to the right place, Martin. > > > I recently installed a debian woody on a pentium based box. I also managed to install Apache 2 (with php and some others modules) and it works perfectly as i was waiting it to do :) > > I red that apache 2.x was not compatible with mod_perl 1.x, so i downloaded the 2.current. I figured out that in the package it is 1.99. Is it ok? > > Now, i am trying to make mod_perl working with this bunch of sacred software, and i just CANT. The mod_perl version is 1.99_16 and my Apache is 2.0.52. > > > > * Configured: > > perl Makefile.PL MP_AP_PREFIX=/usr/local/apache2 MP_INST_APACHE2=1 > > > > Compiled: > > * make && make install without any problem. > > You forgot to run the most important part: make test > > > * But when i start apache i get this stuff: > > Syntax error on line 104 of /usr/local/apache2/conf/httpd.conf: > > Cannot load /usr/local/apache2/modules/mod_perl.so into server: /usr/local/apache2/modules/mod_perl.so: undefined symbol: PL_localizing > > > > i googled a lot, but in didnt found anything! > > > > If somebody answer this, and if you ask me for information, like nm xxx.so, please tell me the command line to do cause im not very familar with linux shell. > > > > Please somebody helps me, my native language is french so if somebody try to help me be clear and speak slowly :) > > In advance i thank you all a lot, and anyway! > > > libc=/lib/libc-2.2.5.so, so=so, useshrplib=true, libperl=libperl.so.5.6.1 > > Looks like the usual problem of having more than one perl installed the > wrong libperl.so getting on the way of the startup (not the one you built > modperl with). Please post the output of: > > ldd /usr/local/apache2/modules/mod_perl.so > > and the location of all libperl.so.* file found on your system. > > (you could try using locate(1) to accomplish that task) > > locate libperl.so > > -- > __ > Stas BekmanJAm_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 > > > -- 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
Re: [mp2] & Apache2: undefined symbol: PL_localizing
MARTIN Pierre wrote: Hello all, I am totally new to mod_perl mailing list so maybe i am not posting in the right place. You are posting it to the right place, Martin. I recently installed a debian woody on a pentium based box. I also managed to install Apache 2 (with php and some others modules) and it works perfectly as i was waiting it to do :) I red that apache 2.x was not compatible with mod_perl 1.x, so i downloaded the 2.current. I figured out that in the package it is 1.99. Is it ok? Now, i am trying to make mod_perl working with this bunch of sacred software, and i just CANT. The mod_perl version is 1.99_16 and my Apache is 2.0.52. * Configured: perl Makefile.PL MP_AP_PREFIX=/usr/local/apache2 MP_INST_APACHE2=1 Compiled: * make && make install without any problem. You forgot to run the most important part: make test * But when i start apache i get this stuff: Syntax error on line 104 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_perl.so into server: /usr/local/apache2/modules/mod_perl.so: undefined symbol: PL_localizing i googled a lot, but in didnt found anything! If somebody answer this, and if you ask me for information, like nm xxx.so, please tell me the command line to do cause im not very familar with linux shell. Please somebody helps me, my native language is french so if somebody try to help me be clear and speak slowly :) In advance i thank you all a lot, and anyway! libc=/lib/libc-2.2.5.so, so=so, useshrplib=true, libperl=libperl.so.5.6.1 Looks like the usual problem of having more than one perl installed the wrong libperl.so getting on the way of the startup (not the one you built modperl with). Please post the output of: ldd /usr/local/apache2/modules/mod_perl.so and the location of all libperl.so.* file found on your system. (you could try using locate(1) to accomplish that task) locate libperl.so -- __ Stas BekmanJAm_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