使用OpenSSL 1.0.1p进行编译时,PHP-5.6.13出错

In our production environment we need to apply SSL certificate on our Apache web server.

For this purpose I need to deploy a self signed certificate on my test server with same configuration of live server. The machine details are below:

  1. Red hat Linux X86_64 6.1
  2. Apache server 2.4.16
  3. PHP 5.6.13

Installation steps of OpenSSL are mention below:

./config --prefix=/u/usr/local/openssl --openssldir=/u/usr/local/openssl -fPIC no-gost no-shared no-zlib
make
make install
open SSL 1.0.1p is successfully compiled with Apache server 2.4.16

But issue is that, it does not compile with PHP. Error message is mentioned below for your reference:

ext/openssl/.libs/openssl.o: In function `zif_openssl_pkey_get_details':
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3938: undefined reference to `_PKEY_get1_EC_KEY'
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3938: undefined reference to `KEY_get0_group'
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3941: undefined reference to `GROUP_get_curve_name'
ext/openssl/.libs/openssl.o: In function `php_openssl_is_private_key':
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3492: undefined reference to `KEY_get0_private_key'
ext/openssl/.libs/openssl.o: In function `zif_openssl_pkey_export':
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3750: undefined reference to `_PKEY_get1_EC_KEY'
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3750: undefined reference to `_write_bio_ECPrivateKey'
ext/openssl/.libs/openssl.o: In function `zif_openssl_pkey_export_to_file':
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3681: undefined reference to `_PKEY_get1_EC_KEY'
/u1/softwares/php-5.6.13/ext/openssl/openssl.c:3681: undefined reference to `_write_bio_ECPrivateKey'
ext/openssl/.libs/xp_ssl.o: In function `php_select_crypto_method':
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:965: undefined reference to `TL_2_client_method'
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:965: undefined reference to `TL_2_server_method'
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:957: undefined reference to `TL_1_client_method'
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:957: undefined reference to `TL_1_server_method'
ext/openssl/.libs/xp_ssl.o: In function `set_server_ecdh_curve':
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:1211: undefined reference to `EEY_new_by_curve_name'
/u1/softwares/php-5.6.13/ext/openssl/xp_ssl.c:1220: undefined reference to `EEY_free'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1