Bug #51260 [Com]: Compile PHP with compiled openssl - relocation R_X86_64_32

[email protected] ("cnemelka at yahoo dot com") Wed, 7 Apr 2010 04:23:04 +0200 (CEST)
Newsgroups php.bugs
Message-ID <[email protected]>
Edit report at http://bugs.php.net/bug.php?id=51260&edit=1

 ID:               51260
 Comment by:       cnemelka at yahoo dot com
 Reported by:      vejpuste at oikt dot czu dot cz
 Summary:          Compile PHP with compiled openssl - relocation
                   R_X86_64_32
 Status:           Open
 Type:             Bug
 Package:          Compile Failure
 Operating System: CentOS release 5.4 x86_64
 PHP Version:      5.2.13

 New Comment:

Same problem in RHEL5 (release 5.5 Tikanga)


Previous Comments:
------------------------------------------------------------------------
[2010-03-17 00:24:41] oneforall59 at hotmail dot com

Hi
same problem for me that -Wl,-rpath, isn't getting passed. I did a diff
on a
few file configure, Makefile, acinclude.m4, aclocal.m4 etc and I do see
a chunk
removed from configure but it doersn'tlook like its to do with it. But
not
sure. I do know there is somethign missing for it to pass the 
-Wl,-rpath,
thou.
In my build I added EXTRA_LDFLAGS="-L/usr/lib64
-Wl,-rpath,/usr/local/lib64/c-
client/lib64 -L/usr/local/lib64/c-client/lib64 -L/usr/local/lib64/c-
client/lib64" \
./configure ... 
I had to because with multilib it was trying to read the 32bit libs .
LDFLAGS="-L/lib64 -L/usr/lib64" etc weren't working . I just dunno what
configure uses to get that line for EXTRA_LDFLAGS in Makefile :(

------------------------------------------------------------------------
[2010-03-10 13:30:35] vejpuste at oikt dot czu dot cz

Description:
------------
I have compiled openssl (./config -Bsymbolic)
PHP compiled --with-openssl=/usr/local/ssl
PHP 5.2.12 make OK
PHP 5.2.13 make :
... -o libphp5.la
/usr/bin/ld: /usr/local/ssl/lib64/libssl.a(s2_srvr.o): relocation
R_X86_64_32 against `a local symbol' can not be used when making a
shared object; recompile with -fPIC
/usr/local/ssl/lib64/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [libphp5.la] Error 1

I compare Makefile 5.2.12 and 5.2.13. Different is :
#5.2.13
EXTRA_LDFLAGS = -avoid-version -module -L/usr/local/ssl/lib64
-L/usr/lib/oracle/11.2/client64/lib -L/usr/local/lib64
#5.2.12
EXTRA_LDFLAGS = -avoid-version -module -L/usr/lib64
-Wl,-rpath,/usr/local/ssl/lib64 -L/usr/local/ssl/lib64
-Wl,-rpath,/usr/lib
/oracle/11.2/client64/lib -L/usr/lib/oracle/11.2/client64/lib
-Wl,-rpath,/usr/local/lib64 -L/usr/local/lib64 -L/usr/local/ssl/
lib64 -L/usr/lib/oracle/11.2/client64/lib -L/usr/local/lib64

I modify Makefile to EXTRA_LDFLAGS from 5.2.12 - make OK.




------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=51260&edit=1