Bryn Dyment wrote:
(All the below tests are with dynamic Perl.)



OK, what if you take the original (with dynamic perl) and replace

-L/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -lperl

with

-Wl,-L/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -Wl,-lperl


Same problem.



What if you add -Wl,-i to the original command?


Works!

Cool. Each platform has a totally different linker flag to postpone symbol resolution :(


Also, for comparison purposes, here is the gcc that succeeds for the
mod_perl/Apache build, along with the corresponding gcc that fails for the
mod_perl/SSL/Apache build (per my original post: this problem only occurs
when attempting to build with both mod_perl and SSL):


mod_perl/Apache (success):


gcc -funsigned-char -DMOD_PERL -DUSE_PERL_SSI -DHAS_FPSETMASK
-DHAS_FLOATINGPOINT_H -fno-strict-aliasing -DUSE_EXPAT -I./lib/expat-lite
-DNO_DL_NEEDED `./apaci` -o httpd buildmark.o modules.o
modules/standard/libstandard.a modules/perl/libperl.a main/libmain.a
./os/unix/libos.a ap/libap.a lib/expat-lite/libexpat.a -lcrypt
-Wl,-R/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -Wl,-E
/usr/local/lib/perl5/5.8.1/i386-freebsd/auto/DynaLoader/DynaLoader.a
-L/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -lperl -lm -lcrypt -lutil -lc


mod_perl/SSL/Apache (failure):


gcc -funsigned-char -DMOD_SSL=208115 -DMOD_PERL -DUSE_PERL_SSI
-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -DEAPI
-DUSE_EXPAT -I./lib/expat-lite -DNO_DL_NEEDED `./apaci` -L/usr/lib -o httpd
buildmark.o modules.o modules/standard/libstandard.a modules/ssl/libssl.a
modules/perl/libperl.a main/libmain.a ./os/unix/libos.a ap/libap.a
lib/expat-lite/libexpat.a -lcrypt -lssl -lcrypto
-Wl,-R/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -Wl,-E
/usr/local/lib/perl5/5.8.1/i386-freebsd/auto/DynaLoader/DynaLoader.a
-L/usr/local/lib/perl5/5.8.1/i386-freebsd/CORE -lperl -lm -lcrypt -lutil -lc

I think I know what your problem is. The failing command includes: -L/usr/lib, so it finds /usr/lib/libperl.so.3 instead of /usr/local/lib/perl5/5.8.1/i386-freebsd/CORE/libperl.so. I bet that if you remove temporary /usr/lib/libperl.so.3 it will just work.


__________________________________________________________________
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