Re: 1.3.27 DSO hassles

2003-01-15 Thread Stas Bekman
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

2003-01-15 Thread Sinclair, Alan (CORP, GEAccess)
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

2003-01-15 Thread Paul Weiss
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

2003-01-15 Thread Sinclair, Alan (CORP, GEAccess)
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

2003-01-13 Thread John D Groenveld
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

2003-01-13 Thread Stas Bekman
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