Re: 1.3.27 DSO hassles
Sinclair, Alan (CORP, GEAccess) wrote: Here's the solution to resolve the __floatdisf symbol error. Thanks to Paul Weiss who provided the hint. Configure and install Apache Relink mod_negotiation.so with libgcc.a (I opted to statically link mod_perl into the core) cd apache_1.3.27/src/modules ld -G -o mod_negotiation.so mod_negotiation.lo /pathto/libgcc.a This will extract the floatdisf function from libgcc.a and link it into mod_negotiation.so which can be verified with nm. The libgcc.a archive will be contained into your gcc build tree under gcc-3.2.1/gcc Thanks to all who replied. Fantastic! I've documented this solution at http://perl.apache.org/docs/1.0/guide/troubleshooting.html (auto-update pending) Thank you! __ 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
RE: 1.3.27 DSO hassles
Here's the solution to resolve the __floatdisf symbol error. Thanks to Paul Weiss who provided the hint. Configure and install Apache Relink mod_negotiation.so with libgcc.a (I opted to statically link mod_perl into the core) cd apache_1.3.27/src/modules ld -G -o mod_negotiation.so mod_negotiation.lo /pathto/libgcc.a This will extract the floatdisf function from libgcc.a and link it into mod_negotiation.so which can be verified with nm. The libgcc.a archive will be contained into your gcc build tree under gcc-3.2.1/gcc Thanks to all who replied. Alan -Original Message- From: Paul Weiss [mailto:[EMAIL PROTECTED]] Sent: Wednesday, January 15, 2003 11:20 AM To: Sinclair, Alan (CORP, GEAccess); [EMAIL PROTECTED] Subject: Re: 1.3.27 DSO hassles Hi-- I also had this problem when I built on Solaris (2.7). Here is how I fixed it: The symbol is in libgcc.a. Use gcc -print-libgcc-file-name to see where that file is. Now, delete mod_negotiation.so and re-make. See how make does the link. Then, just re-link adding the file to the command line. I think you have to do it for one other module as well, but I don't remember which one. I never came up with a fully automated way to do it, but I didn't rebuild Apache that often. -P - Original Message - From: "Sinclair, Alan (CORP, GEAccess)" <[EMAIL PROTECTED]> To: "Sinclair, Alan (CORP, GEAccess)" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Wednesday, January 15, 2003 12:40 PM Subject: RE: 1.3.27 DSO hassles > I was attempting to configure mod_perl first before factoring in mod_ssl. I > cannot find the library that contains the symbol __floatdisf. It's not in > libcrypt or libssl libraries from openssl, it does not appear to be in any > library in /usr/lib or /lib. The symbol is not defined in any Apache object > file either. I'm kinda stumped ont this. I was thinking of upgrading to > Solaris 8. > > Thanks > as > > > -Original Message- > From: Stas Bekman [mailto:[EMAIL PROTECTED]] > Sent: Monday, January 13, 2003 4:29 PM > To: Sinclair, Alan (CORP, GEAccess) > Cc: '[EMAIL PROTECTED]' > Subject: Re: 1.3.27 DSO hassles > > > Sinclair, Alan (CORP, GEAccess) wrote: > > All, > > Having been successfully using modperl for the last 2 years statically > > linked with Apache, I have been trying again to make modperl work with > > 1.3.27 when the Apache core modules are loaded as DSOs. There has been > some > > traffic in the past on this subject and I checked the archives and > followed > > through on some of the suggestions > > - Recompiled perl 5.6 with the --Ubincompat5005 option for specific use > with > > modperl > > - Setup modperl using the perl compiled with --Ubincompat5005 > > - I use the following configure options for the APACI for Apache 1.3.27 > > ./configure --prefix=/opt/apache-so \ > > --enable-rule=SHARED_CORE \ > > --enable-module=most \ > > --enable-shared=max \ > > --activate-module=src/modules/perl/libperl.a \ > > --disable-shared=perl > > > > Apache is compiled and statically links modperl without any problems > > (Solaris 2.6). When Apache is executed, I receive this error: > > fatal: relocation error: file /opt/apache-so/libexec/mod_negotiation.so: > > symbol __floatdisf: referenced symbol not found > > I have tried the recommendations, specifically the issue with perl's > malloc > > on Solaris which can be corrected with the --Ubincompat5005 option. > > There were some suggestions offered in this thread (large files CFLAGS?) > http://marc.theaimsgroup.com/?t=10168427183&r=1&w=2 > Though I didn't see a success report. > > If somebody on Solaris 2.6 were able to get it to work, please chime in. > > __ > 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 >
Re: 1.3.27 DSO hassles
Hi-- I also had this problem when I built on Solaris (2.7). Here is how I fixed it: The symbol is in libgcc.a. Use gcc -print-libgcc-file-name to see where that file is. Now, delete mod_negotiation.so and re-make. See how make does the link. Then, just re-link adding the file to the command line. I think you have to do it for one other module as well, but I don't remember which one. I never came up with a fully automated way to do it, but I didn't rebuild Apache that often. -P - Original Message - From: "Sinclair, Alan (CORP, GEAccess)" <[EMAIL PROTECTED]> To: "Sinclair, Alan (CORP, GEAccess)" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Wednesday, January 15, 2003 12:40 PM Subject: RE: 1.3.27 DSO hassles > I was attempting to configure mod_perl first before factoring in mod_ssl. I > cannot find the library that contains the symbol __floatdisf. It's not in > libcrypt or libssl libraries from openssl, it does not appear to be in any > library in /usr/lib or /lib. The symbol is not defined in any Apache object > file either. I'm kinda stumped ont this. I was thinking of upgrading to > Solaris 8. > > Thanks > as > > > -Original Message- > From: Stas Bekman [mailto:[EMAIL PROTECTED]] > Sent: Monday, January 13, 2003 4:29 PM > To: Sinclair, Alan (CORP, GEAccess) > Cc: '[EMAIL PROTECTED]' > Subject: Re: 1.3.27 DSO hassles > > > Sinclair, Alan (CORP, GEAccess) wrote: > > All, > > Having been successfully using modperl for the last 2 years statically > > linked with Apache, I have been trying again to make modperl work with > > 1.3.27 when the Apache core modules are loaded as DSOs. There has been > some > > traffic in the past on this subject and I checked the archives and > followed > > through on some of the suggestions > > - Recompiled perl 5.6 with the --Ubincompat5005 option for specific use > with > > modperl > > - Setup modperl using the perl compiled with --Ubincompat5005 > > - I use the following configure options for the APACI for Apache 1.3.27 > > ./configure --prefix=/opt/apache-so \ > > --enable-rule=SHARED_CORE \ > > --enable-module=most \ > > --enable-shared=max \ > > --activate-module=src/modules/perl/libperl.a \ > > --disable-shared=perl > > > > Apache is compiled and statically links modperl without any problems > > (Solaris 2.6). When Apache is executed, I receive this error: > > fatal: relocation error: file /opt/apache-so/libexec/mod_negotiation.so: > > symbol __floatdisf: referenced symbol not found > > I have tried the recommendations, specifically the issue with perl's > malloc > > on Solaris which can be corrected with the --Ubincompat5005 option. > > There were some suggestions offered in this thread (large files CFLAGS?) > http://marc.theaimsgroup.com/?t=10168427183&r=1&w=2 > Though I didn't see a success report. > > If somebody on Solaris 2.6 were able to get it to work, please chime in. > > __ > 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 >
RE: 1.3.27 DSO hassles
I was attempting to configure mod_perl first before factoring in mod_ssl. I cannot find the library that contains the symbol __floatdisf. It's not in libcrypt or libssl libraries from openssl, it does not appear to be in any library in /usr/lib or /lib. The symbol is not defined in any Apache object file either. I'm kinda stumped ont this. I was thinking of upgrading to Solaris 8. Thanks as -Original Message- From: Stas Bekman [mailto:[EMAIL PROTECTED]] Sent: Monday, January 13, 2003 4:29 PM To: Sinclair, Alan (CORP, GEAccess) Cc: '[EMAIL PROTECTED]' Subject: Re: 1.3.27 DSO hassles Sinclair, Alan (CORP, GEAccess) wrote: > All, > Having been successfully using modperl for the last 2 years statically > linked with Apache, I have been trying again to make modperl work with > 1.3.27 when the Apache core modules are loaded as DSOs. There has been some > traffic in the past on this subject and I checked the archives and followed > through on some of the suggestions > - Recompiled perl 5.6 with the --Ubincompat5005 option for specific use with > modperl > - Setup modperl using the perl compiled with --Ubincompat5005 > - I use the following configure options for the APACI for Apache 1.3.27 > ./configure --prefix=/opt/apache-so \ > --enable-rule=SHARED_CORE \ > --enable-module=most \ > --enable-shared=max \ > --activate-module=src/modules/perl/libperl.a \ > --disable-shared=perl > > Apache is compiled and statically links modperl without any problems > (Solaris 2.6). When Apache is executed, I receive this error: > fatal: relocation error: file /opt/apache-so/libexec/mod_negotiation.so: > symbol __floatdisf: referenced symbol not found > I have tried the recommendations, specifically the issue with perl's malloc > on Solaris which can be corrected with the --Ubincompat5005 option. There were some suggestions offered in this thread (large files CFLAGS?) http://marc.theaimsgroup.com/?t=10168427183&r=1&w=2 Though I didn't see a success report. If somebody on Solaris 2.6 were able to get it to work, please chime in. __ 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
Re: 1.3.27 DSO hassles
In message <[EMAIL PROTECTED]>, Stas Bekman writes: >There were some suggestions offered in this thread (large files CFLAGS?) >http://marc.theaimsgroup.com/?t=10168427183&r=1&w=2 >Though I didn't see a success report. > >If somebody on Solaris 2.6 were able to get it to work, please chime in. Apache/modperl works fine for me as DSO under Solaris 7,8,9. 2.6 is EOL, but I suspect it will work with latest recommended patches. Using gcc2.95.3 Using perl5.8, but also worked under 5.6.1 and 5.00503 Build openssl ./config --prefix=/opt/openssl \ --openssldir=/opt/openssl shared env LD_RUN_PATH=/opt/openssl/lib make Build Apache/mod_ssl ./configure --with-apache=../apache_1.3.27 cd ../apache_1.3.27 env SSL_BASE=/opt/openssl ./configure --prefix=/opt/apache \ --enable-module=most --enable-shared=max # Add the var CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" to the env command if you want largefiles or built your perl that way # Edit src/modules/ssl/Makefile and add -R$(SSL_LIBDIR) to SSL_LDFLAGS # If using gcc2, edit src/modules/proxy/Makefile and add "-L/path/to/gcc-lib/$host_info/$gcc_version/ -lgcc" to LIBS_SHLIB Build modperl perl Makefile.PL USE_APXS=1 WITH_APXS=/opt/apache/bin/apxs \ EVERYTHING=1 PERL_TRACE=1 John [EMAIL PROTECTED]
Re: 1.3.27 DSO hassles
Sinclair, Alan (CORP, GEAccess) wrote: All, Having been successfully using modperl for the last 2 years statically linked with Apache, I have been trying again to make modperl work with 1.3.27 when the Apache core modules are loaded as DSOs. There has been some traffic in the past on this subject and I checked the archives and followed through on some of the suggestions - Recompiled perl 5.6 with the --Ubincompat5005 option for specific use with modperl - Setup modperl using the perl compiled with --Ubincompat5005 - I use the following configure options for the APACI for Apache 1.3.27 ./configure --prefix=/opt/apache-so \ --enable-rule=SHARED_CORE \ --enable-module=most \ --enable-shared=max \ --activate-module=src/modules/perl/libperl.a \ --disable-shared=perl Apache is compiled and statically links modperl without any problems (Solaris 2.6). When Apache is executed, I receive this error: fatal: relocation error: file /opt/apache-so/libexec/mod_negotiation.so: symbol __floatdisf: referenced symbol not found I have tried the recommendations, specifically the issue with perl's malloc on Solaris which can be corrected with the --Ubincompat5005 option. There were some suggestions offered in this thread (large files CFLAGS?) http://marc.theaimsgroup.com/?t=10168427183&r=1&w=2 Though I didn't see a success report. If somebody on Solaris 2.6 were able to get it to work, please chime in. __ 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
1.3.27 DSO hassles
All, Having been successfully using modperl for the last 2 years statically linked with Apache, I have been trying again to make modperl work with 1.3.27 when the Apache core modules are loaded as DSOs. There has been some traffic in the past on this subject and I checked the archives and followed through on some of the suggestions - Recompiled perl 5.6 with the --Ubincompat5005 option for specific use with modperl - Setup modperl using the perl compiled with --Ubincompat5005 - I use the following configure options for the APACI for Apache 1.3.27 ./configure --prefix=/opt/apache-so \ --enable-rule=SHARED_CORE \ --enable-module=most \ --enable-shared=max \ --activate-module=src/modules/perl/libperl.a \ --disable-shared=perl Apache is compiled and statically links modperl without any problems (Solaris 2.6). When Apache is executed, I receive this error: fatal: relocation error: file /opt/apache-so/libexec/mod_negotiation.so: symbol __floatdisf: referenced symbol not found I have tried the recommendations, specifically the issue with perl's malloc on Solaris which can be corrected with the --Ubincompat5005 option. Any ideas Thanks Alan