Stas Bekman wrote:
Bryn Dyment wrote:

and you don't have:
       /usr/local/lib/perl5/5.8.0/i386-freebsd/CORE/libperl.so



Right.




I assume that when you run:

perl Makefile.PL APACHE_SRC=../apache_1.3.28/src \

perl == /usr/local/bin/perl5.8.0, right?



Right. (Perl 5.8.1's installation doesn't automatically replace the old Perl in /usr/bin, but (a) I took care of that manually, and (b) I'm now using Perl 5.8.0, whose installation takes care of that.)



Please post the output of

% perl -V



http://www.bigtrouble.com/perl_minus_V_output.html




you also need perl's libperl.a, hence I suggested that you run:

cd ../apache_1.3.28/src
gcc -funsigned-char -DMOD_SSL=208115 -DMOD_PERL -DUSE_PERL_SSI



[...]


It worked!


Good.

So, follow-up questions:

1. Should I be able to safely run 'make install' now?


Yup.

2. Whose 'fault' is this mistake (besides mine, that is...)?


it's a bug in ExtUtils::Embed, I'm filing a bug report to p5p and will CC you.

perl-5.8.1-ithread-nouseshrplib -MExtUtils::Embed -e ldopts -- DynaLoader

Though it seems to work fine on linux/gcc-3.3.1 with this bug. So it's possible that the latter gcc is much smarter. Updating your gcc may resolve this problem.

Also why in the world did you build your perl statically linked? You benefit from a shared memory when linking dynamically, if you have more than one perl occurence running at the same time, and avoid this kind of problems, since nowadays hardly anybody builds static perl, so you get very little testing if at all for any project involving embedding perl.

3. Is there something I could add _before_ the error to prevent this from
happening?


Give me a few minutes, I may come up with a workaround.

Please try this patch. It works fine on Linux with static perl. Save this patch in /tmp/patch then apply it:


cd modperl-1.29
patch -p0 < /tmp/patch

and now rebuild from scratch.

Index: apaci/mod_perl.config.sh
===================================================================
RCS file: /home/cvs/modperl/apaci/mod_perl.config.sh,v
retrieving revision 1.27
diff -u -r1.27 mod_perl.config.sh
--- apaci/mod_perl.config.sh    19 Jun 2002 16:31:52 -0000      1.27
+++ apaci/mod_perl.config.sh    21 Oct 2003 06:03:37 -0000
@@ -145,6 +145,12 @@
 $ldopts =~ [EMAIL PROTECTED]@@ if ($^O eq 'bsdos');
 $ldopts =~ s,(-bE:)(perl\.exp),$1$Config{archlibexp}/CORE/$2, if($^O eq "aix");

+# ExtUtils::Embed always gives us the linking code for the dynamic
+# build of perl, even if perl is static.
+$ldopts =~ s{-L$Config{archlibexp}/CORE\s+-lperl}
+            {$Config{archlibexp}/CORE/$Config{libperl}}
+    if $Config{useshrplib} eq 'false';
+
 #replace -Wl args meant for cc with args for ld
 if ($ARGV[0] eq "DSO" and $^O eq "hpux" and $Config{ld} =~ /ld$/) {
     while ($ldopts =~ s/-Wl,(\S+)/$1/) {

__________________________________________________________________
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



Reply via email to