RE: installing php 5.5.1 on to solaris 10 results in error during make

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Why is that the best option?

In the meantime I was able to compile and install php using openssl 32 bit. But there is something I don't understand. This is a 32 bit system so how comes lib are compiled in 64 bit? What is the difference?

Kas




Date: Mon, 12 Aug 2013 13:30:38 +0600
From: eugene@xxxxxxxxx
To: kascoenen@xxxxxxxxxxx
CC: php-install@xxxxxxxxxxxxx
Subject: Re: installing php 5.5.1 on to solaris 10 results in error during make

Hi.

On 12.08.2013 13:04, KAs Coenen wrote:
I don't know if this is complete or not. I installed openssl from source. But it reports all files as 64 bit although I downloaded the 32 bit version??
Source tarball contains sources for both architectures. It's the compiler and linker making decision based on your environment falgs and stuff about the target architecture.
root@zone-eu4# file libcrypto.so
libcrypto.so:   ELF 64-bit LSB dynamic lib AMD64 Version 1, dynamically linked, not stripped, no debugging information available
root@zone-eu4# file libcrypto.so.1.0.0
libcrypto.so.1.0.0:     ELF 64-bit LSB dynamic lib AMD64 Version 1, dynamically linked, not stripped, no debugging information available
root@zone-eu4# file libssl.so
libssl.so:      ELF 64-bit LSB dynamic lib AMD64 Version 1, dynamically linked, not stripped, no debugging information available
root@zone-eu4# file libcrypto.a
libcrypto.a:    current ar archive, not a dynamic executable or shared object
root@zone-eu4# file libssl.so.1.0.0
libssl.so.1.0.0:        ELF 64-bit LSB dynamic lib AMD64 Version 1, dynamically linked, not stripped, no debugging information available
Yup, your openssl binaries are for amd64 architecture.

I also have 2 versions installed:

root@zone-eu4# /usr/local/ssl/bin/openssl version
OpenSSL 1.0.1e 11 Feb 2013
root@zone-eu4# which openssl
/usr/sfw/bin/openssl
root@zone-eu4# openssl version
OpenSSL 0.9.7d 17 Mar 2004 (+ security fixes for: CVE-2005-2969 CVE-2006-2937 CVE-2006-2940 CVE-2006-3738 CVE-2006-4339 CVE-2006-4343 CVE-2007-5135 CVE-2007-3108 CVE-2008-5077 CVE-2009-0590 CVE-2009-3555)
root@zone-eu4#

So do I need to recompile openssl in 32 bit? Any idea how to do it?

Well, you have now multiple choices:

- build 32-bit PHP with 32-bit openssl from Solaris base, /usr/sfw/lib
- build 32-bit openssl 1.0.0 by supplying proper Configure arguments (solaris-x86-gcc)
- build 64-bit PHP with 64-bit openssl you already have, by supplying -m64 in environment CFLAGS to PHP's configure. This option will probably require rebuilding your supplementary libraries that you use with PHP and not contained in Solaris base (mysql, gd, mcrypt, whatever) in 64-bit, but this is probably the most wise option.

Eugene.


[Index of Archives]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [Postgresql]     [PHP Books]     [PHP Databases]     [PHP SOAP]
  Powered by Linux