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

Mailing List Archive: ModPerl: ModPerl

mod_perl make fails with unrecognized argument

 

 

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


koulouk at yahoo

Feb 15, 2000, 1:17 PM

Post #1 of 3 (914 views)
Permalink
mod_perl make fails with unrecognized argument

Hi there,

Trying to build mod_perl (1.21) using apxs
(apache_1.3.11) on an HP workstation (HP-UX 10.20).

After successful execution of the following:

perl Makefile.PL \
USE_APXS=1 \
WITH_APXS="/opt/webpages/apache_1.3.11/bin/apxs" \
EVERYTHING=1

I issued the 'make' command. Things were progressing
nicely until I received the following error:

rm -f libperl.so
ld -b -L/usr/local/lib -o libperl.so
mod_perl.lo perlxsi.lo perl_config.lo perl_util.lo
perlio.lo mod_perl_opmask.lo Apache.lo Constants.lo
ModuleConfig.lo Log.lo URI.lo Util.lo Connection.lo
Server.lo File.lo Table.lo -Wl,-E -Wl,-B,deferred
-L/usr/local/lib
/opt/perl500503/lib/5.00503/PA-RISC1.1/auto/DynaLoader/DynaLoader.a
-L/opt/perl500503/lib/5.00503/PA-RISC1.1/CORE -lperl
-lnsl_s -lndbm -ldld -lm -lc -lndir -lcrypt
ld: Unrecognized argument: -Wl,-E
ld: Usage: ld flags... files...
*** Error exit code 1

Stop.
*** Error exit code

Checking the generated Makefile, the CCDLFLAGS are set
as follows:

CCDLFLAGS = -Wl,-E -Wl,-B,deferred

Assuming that removing the -Wl, -E flags will solve
this problem, the question is what file do I edit so
that the changes can take affect?
I tried to change the -Wl, -E flags from the generated
Makefile file (even though I know that was not the
appropriate file). I looked at the Makefile.PL file
but again could not find where to make the changes.

If removing the flags will not solve this issue, any
ideas what the problem might be?

Thanks,

Kosta
_______________________________________________________
Do You Yahoo!?
Get your free @yahoo.ca address at http://mail.yahoo.ca


adsb at nortelnetworks

Feb 16, 2000, 2:47 AM

Post #2 of 3 (863 views)
Permalink
Re: mod_perl make fails with unrecognized argument [In reply to]

On Tue, 15 Feb 2000, Kosta Kouloufakos wrote:

> Trying to build mod_perl (1.21) using apxs
> (apache_1.3.11) on an HP workstation (HP-UX 10.20).

Coincidence! I was trying to do this yesterday.

> After successful execution of the following:
>
> perl Makefile.PL \
> USE_APXS=1 \
> WITH_APXS="/opt/webpages/apache_1.3.11/bin/apxs" \
> EVERYTHING=1
>
> I issued the 'make' command. Things were progressing
> nicely until I received the following error:
>
> rm -f libperl.so
> ld -b -L/usr/local/lib -o libperl.so
> mod_perl.lo perlxsi.lo perl_config.lo perl_util.lo
> perlio.lo mod_perl_opmask.lo Apache.lo Constants.lo
> ModuleConfig.lo Log.lo URI.lo Util.lo Connection.lo
> Server.lo File.lo Table.lo -Wl,-E -Wl,-B,deferred
> -L/usr/local/lib
> /opt/perl500503/lib/5.00503/PA-RISC1.1/auto/DynaLoader/DynaLoader.a
> -L/opt/perl500503/lib/5.00503/PA-RISC1.1/CORE -lperl
> -lnsl_s -lndbm -ldld -lm -lc -lndir -lcrypt
> ld: Unrecognized argument: -Wl,-E
> ld: Usage: ld flags... files...
> *** Error exit code 1
>
> Stop.
> *** Error exit code
>
> Checking the generated Makefile, the CCDLFLAGS are set
> as follows:
>
> CCDLFLAGS = -Wl,-E -Wl,-B,deferred

What's happening is that "-Wl,-E -Wl,-B,deferred" are
arguments to the =compiler= telling if to pass the
options "-E -B deferred" to the =linker=. However in
the Makefile in the 'apaci' sub-directory, the
"-Wl,-E -Wl,-B,deferred" arguments are being used by
the linker (ld).

Go to the 'apaci' sub-directory, edit the Makefile
to change "-Wl,-E -Wl,-B,deferred" to "-E -B deferred"
and redo the make.

This will then probably put you in the same position
as me: getting

ld: Invalid loader fixup for symbol "$000000024".
(the number varies)

when trying to link libperl.so

--
Andrew Benham adsb [at] nortelnetworks
Nortel Networks Plc, London Road, Harlow, Essex CM17 9NA, United Kingdom
Tel: +44 1279 402372 Fax: +44 1279 405746

I speak for myself, my views are not necessarily the views
of Nortel Networks or any other corporation.


thomas at hp9000

Feb 16, 2000, 3:08 AM

Post #3 of 3 (846 views)
Permalink
Re: mod_perl make fails with unrecognized argument [In reply to]

Hello there,

On Wed, 16 Feb 2000, Andrew Benham wrote:

> What's happening is that "-Wl,-E -Wl,-B,deferred" are
> arguments to the =compiler= telling if to pass the
> options "-E -B deferred" to the =linker=. However in
> the Makefile in the 'apaci' sub-directory, the
> "-Wl,-E -Wl,-B,deferred" arguments are being used by
> the linker (ld).
>
> Go to the 'apaci' sub-directory, edit the Makefile
> to change "-Wl,-E -Wl,-B,deferred" to "-E -B deferred"
> and redo the make.
>
> This will then probably put you in the same position
> as me: getting
>
> ld: Invalid loader fixup for symbol "$000000024".
> (the number varies)
>
> when trying to link libperl.so

Been there, seen that.

I got the "Invalid loader fixup" message, too. AFAIK it results
from a non-PIC (position independent code) compilation of the
perl library - sometimes HP-UX seems to need "+Z" to compile PIC,
which is often not included in autoconf makefiles. Maybe this
can help you to proceed.

In my case, however, even after I recompiled my perl lib with +Z, I got
loads of missing symbols on apache startup. Finally I gave up
and returned to a statically linked mod_perl, thinking (not for the
first time) about switching to Linux :)


_____

Thomas Corte
<thomas [at] knipp>

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.