Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: ModPerl: ModPerl

mod_perl compilation problem

 

 

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded


daniel.axtell at snet

Aug 31, 2008, 7:55 PM

Post #1 of 4 (2202 views)
Permalink
mod_perl compilation problem

I'm still trying to figure out how to build mod_perl on an AMD x86_64 system.
It's running gcc 4.1.1 on Red Hat 4.1.1-52. Perl 5.8.8 + Apache + mod_perl is
already installed, but I wanted to try and build everything with 5.10 because
I've read that the RedHat Perl binaries are sometimes very slow, and I want to
check out some of the Perl 5.10 features on a new server.

I'm building Perl with these options:
Configure -de -Dprefix=/usr/local -Accflags="-fPIC"

Perl builds, tests, and seems to run fine.

When I make mod_perl, I get this error:

/usr/bin/ld: /usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a(gv.o):
relocation R_X86_64_32 against `a local symbol' can not be used when making a
shared object; recompile with -fPIC
/usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a: could not read
symbols: Bad value
collect2: ld returned 1 exit status

If I'm building Perl explicity with -fPIC, why does mod_perl think I'm not?

I suppose I can live with 5.8.8, but there should be a way to build this.

Dan


fred at redhotpenguin

Aug 31, 2008, 8:28 PM

Post #2 of 4 (2115 views)
Permalink
Re: mod_perl compilation problem [In reply to]

Dan Axtell wrote:
> I'm still trying to figure out how to build mod_perl on an AMD x86_64 system.
> It's running gcc 4.1.1 on Red Hat 4.1.1-52. Perl 5.8.8 + Apache + mod_perl is
> already installed, but I wanted to try and build everything with 5.10 because
> I've read that the RedHat Perl binaries are sometimes very slow, and I want to
> check out some of the Perl 5.10 features on a new server.
>
> I'm building Perl with these options:
> Configure -de -Dprefix=/usr/local -Accflags="-fPIC"
>
> Perl builds, tests, and seems to run fine.
>
> When I make mod_perl, I get this error:
>
> /usr/bin/ld: /usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a(gv.o):
> relocation R_X86_64_32 against `a local symbol' can not be used when making a
> shared object; recompile with -fPIC
> /usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a: could not read
> symbols: Bad value
> collect2: ld returned 1 exit status
>
> If I'm building Perl explicity with -fPIC, why does mod_perl think I'm not?

Did you remove all previous perl build fragments that may have been
compiled without -fPIC? That is, can you try a clean install with a
prefix like /home/myuser/testperl, and then try to build mod_perl
against that perl installation?

I haven't tried 5.10 on x86_64 yet.

>
> I suppose I can live with 5.8.8, but there should be a way to build this.
>
> Dan


daniel.axtell at snet

Sep 1, 2008, 6:30 AM

Post #3 of 4 (2110 views)
Permalink
Re: mod_perl compilation problem [In reply to]

> Did you remove all previous perl build fragments that may have been
> compiled without -fPIC? That is, can you try a clean install with a
> prefix like /home/myuser/testperl, and then try to build mod_perl
> against that perl installation?
>
I'll try that next.

Question: my home box is opensuse 11.0 and it comes with perl 5.10 + mod_perl
for and AMD x86_64. Can I just upload the mod_perl.so binary, or will small
differences like the perl binary being in different locations stop it from
working?


Ebner.EJ.Johannes at partner

Sep 2, 2008, 12:37 AM

Post #4 of 4 (2104 views)
Permalink
Re: mod_perl compilation problem [In reply to]

>Dan Axtell wrote:
>> I'm still trying to figure out how to build mod_perl on an
>AMD x86_64 system.
>> It's running gcc 4.1.1 on Red Hat 4.1.1-52. Perl 5.8.8 +
>Apache + mod_perl is
>> already installed, but I wanted to try and build everything
>with 5.10 because
>> I've read that the RedHat Perl binaries are sometimes very
>slow, and I want to
>> check out some of the Perl 5.10 features on a new server.
>>
>> I'm building Perl with these options:
>> Configure -de -Dprefix=/usr/local -Accflags="-fPIC"
>>
>> Perl builds, tests, and seems to run fine.
>>
>> When I make mod_perl, I get this error:
>>
>> /usr/bin/ld:
>/usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a(gv.o):
>> relocation R_X86_64_32 against `a local symbol' can not be
>used when making a
>> shared object; recompile with -fPIC
>> /usr/local/lib/perl5/5.10.0/x86_64-linux/CORE/libperl.a:
>could not read
>> symbols: Bad value
>> collect2: ld returned 1 exit status
>>
>> If I'm building Perl explicity with -fPIC, why does mod_perl
>think I'm not?
>
>Did you remove all previous perl build fragments that may have been
>compiled without -fPIC? That is, can you try a clean install with a
>prefix like /home/myuser/testperl, and then try to build mod_perl
>against that perl installation?
>
>I haven't tried 5.10 on x86_64 yet.
>
>>
>> I suppose I can live with 5.8.8, but there should be a way
>to build this.
>>
>> Dan
>
>


I tried mod_perl on SLES 10 AMD64 worked perfectly with Perl 5.10 - but
with the compile options for Perl you specified earlier (-fPIC). What
Fred is writing looks like the best solution to me.

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.