The -Wl flag is used to cause the rpath.... part to be passed on the ld
stage of compiling if it is called with cc.  The man pages for cc explain it
in better detail.  The problem is that the Makefile for mod_perl in
$APACHE_SRC/src/modules/perl calls ld directly and the -Wl flag is not
supported by ld.  In order to get it to compile I edited
$APACHE_SRC/src/modules/perl/Makefile after running configure and added the
-rpath .... stuff without the comma to the LDFLAGS variables and removed all
the -Wls.

Example:

LDFLAGS = ....
SOMETHING = -Wl,rpath,.......

to 

LDFLAGS = -rpath <path> .....
SOMETHING = -rpath <path>

This let it compile, but I never could get it to actually work.  Kept
getting undefined errors on things like PL_perl_destruct_level and such.

Pleaes let me know if you actually get it to work.
Kevin Riggins
Dice.com
-----Original Message-----
From: Didier Godefroy [mailto:[EMAIL PROTECTED]]
Sent: Thursday, November 16, 2000 8:31 PM
To: Jeremy A. Mates
Cc: [EMAIL PROTECTED]
Subject: Re: compiling modperl on alpha


on 11/16/00 8:50 PM, Jeremy A. Mates at [EMAIL PROTECTED] uttered the
following:

> Make sure the ld that is being called is the exact same one that was used
> to build perl itself, e.g. by altering your PATH environment variable to
> point to either the vendor default first (under /usr/bin) or perhaps to
> the GNU ld that might have gotten installed somewhere under /freeware/bin
> or /usr/local/bin.

GNU ld isn't on either system and the error is the exact same on both, they
seem to all this in common:

-Wl,-rpath,/usr/local/lib/perl5/5.6.0/alpha-dec_osf/CORE'

> Configure script; you can run `perl -V` to show what the flags are on the
> perl binary earliest in your PATH.  Changing the ld binary used or ld

here it is:

perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration:
  Platform:
    osname=dec_osf, osvers=4.0, archname=alpha-dec_osf
    uname='osf1 ulysium.ulysium.net v4.0 564 alpha '
    config_args=''
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
    useperlio=undef d_sfio=undef uselargefiles=define
    use64bitint=define use64bitall=define uselongdouble=define
usesocks=undef
  Compiler:
    cc='cc', optimize='-O4', gccversion=
    cppflags='-std -ieee -D_INTRINSICS -I/usr/local/include -DLANGUAGE_C'
    ccflags ='-std -fprm d -ieee -D_INTRINSICS -I/usr/local/include
-DLANGUAGE_C'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    intsize=4, longsize=8, ptrsize=8, doublesize=8
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    ivtype='long', ivsize=8, nvtype='long double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='ld', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc
/usr/lib /var/shlib
    libs=-lbind -ldbm -ldb -lm -liconv
    libc=/usr/shlib/libc.so, so=so, useshrplib=true, libperl=libperl.so
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='
-Wl,-rpath,/usr/local/lib/perl5/5.6.0/alpha-dec_osf/CORE'
    cccdlflags=' ', lddlflags='-shared -expect_unresolved "*" -O4 -msym -std
-s -L/usr/local/lib'

Characteristics of this binary (from libperl):
  Compile-time options: USE_64_BIT_INT USE_64_BIT_ALL USE_LARGE_FILES
  Built under dec_osf


At first when I tried building mod_perl, it complained about the large file
support no being in apache, so I recompiled apache for that.

> Also note that mod_perl as a DSO isn't recommended by the mod_perl
> documentation...

What is the problem with doing that?
I tried compiling it statically first, but I get other types of errors when
running the tests, it always fails. The httpd is running but the tests
won't, and the log doesn't say anything that helps to find out why. What
other choices are there then?

-- 
Didier Godefroy
mailto:[EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to