鍍金池/ 問答/PHP/ php5.2.6安裝openssl.o擴展,make時報錯?

php5.2.6安裝openssl.o擴展,make時報錯?

問題:
調(diào)試支付寶支付時報錯:Fatal error: Call to undefined function openssl_get_privatekey()`

在網(wǎng)上查了 說是沒有安裝openssl.so擴展。

通過 phpize安裝擴展,但是make時報錯:

/bin/sh /opt/php-5.2.6/ext/openssl/libtool --mode=compile gcc  -I. -I/opt/php-5.2.6/ext/openssl -DPHP_ATOM_INC -I/opt/php-5.2.6/ext/openssl/include -I/opt/php-5.2.6/ext/openssl/main -I/opt/php-5.2.6/ext/openssl -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /opt/php-5.2.6/ext/openssl/openssl.c -o openssl.lo 
mkdir .libs
 gcc -I. -I/opt/php-5.2.6/ext/openssl -DPHP_ATOM_INC -I/opt/php-5.2.6/ext/openssl/include -I/opt/php-5.2.6/ext/openssl/main -I/opt/php-5.2.6/ext/openssl -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/TSRM -I/usr/local/include/php/Zend -I/usr/local/include/php/ext -I/usr/local/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /opt/php-5.2.6/ext/openssl/openssl.c  -fPIC -DPIC -o .libs/openssl.o
/opt/php-5.2.6/ext/openssl/openssl.c:229: error: expected specifier-qualifier-list before 'LHASH'
/opt/php-5.2.6/ext/openssl/openssl.c:410: error: expected declaration specifiers or '...' before 'LHASH'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_config_check_syntax':
/opt/php-5.2.6/ext/openssl/openssl.c:416: error: 'config' undeclared (first use in this function)
/opt/php-5.2.6/ext/openssl/openssl.c:416: error: (Each undeclared identifier is reported only once
/opt/php-5.2.6/ext/openssl/openssl.c:416: error: for each function it appears in.)
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'add_oid_section':
/opt/php-5.2.6/ext/openssl/openssl.c:435: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:439: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_parse_config':
/opt/php-5.2.6/ext/openssl/openssl.c:485: error: 'struct php_x509_request' has no member named 'config_filename'
/opt/php-5.2.6/ext/openssl/openssl.c:485: error: 'struct php_x509_request' has no member named 'config_filename'
/opt/php-5.2.6/ext/openssl/openssl.c:486: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:486: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:487: error: 'struct php_x509_request' has no member named 'global_config'
/opt/php-5.2.6/ext/openssl/openssl.c:488: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:488: error: 'struct php_x509_request' has no member named 'config_filename'
/opt/php-5.2.6/ext/openssl/openssl.c:490: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:495: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:506: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:506: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:506: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:506: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:508: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:508: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:508: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:508: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:510: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:510: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:510: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:510: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:512: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:512: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:512: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:512: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:515: error: 'struct php_x509_request' has no member named 'priv_key_type'
/opt/php-5.2.6/ext/openssl/openssl.c:515: error: 'struct php_x509_request' has no member named 'priv_key_type'
/opt/php-5.2.6/ext/openssl/openssl.c:518: error: 'struct php_x509_request' has no member named 'priv_key_encrypt'
/opt/php-5.2.6/ext/openssl/openssl.c:520: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:520: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:522: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:522: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:525: error: 'struct php_x509_request' has no member named 'priv_key_encrypt'
/opt/php-5.2.6/ext/openssl/openssl.c:527: error: 'struct php_x509_request' has no member named 'priv_key_encrypt'
/opt/php-5.2.6/ext/openssl/openssl.c:532: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:533: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:533: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:533: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:535: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:536: error: 'struct php_x509_request' has no member named 'digest'
/opt/php-5.2.6/ext/openssl/openssl.c:536: error: 'struct php_x509_request' has no member named 'md_alg'
/opt/php-5.2.6/ext/openssl/openssl.c:536: error: 'struct php_x509_request' has no member named 'digest_name'
/opt/php-5.2.6/ext/openssl/openssl.c:538: error: 'struct php_x509_request' has no member named 'md_alg'
/opt/php-5.2.6/ext/openssl/openssl.c:539: error: 'struct php_x509_request' has no member named 'md_alg'
/opt/php-5.2.6/ext/openssl/openssl.c:539: error: 'struct php_x509_request' has no member named 'digest'
/opt/php-5.2.6/ext/openssl/openssl.c:542: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:542: error: 'struct php_x509_request' has no member named 'config_filename'
/opt/php-5.2.6/ext/openssl/openssl.c:542: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:542: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:542: error: too many arguments to function 'php_openssl_config_check_syntax'
/opt/php-5.2.6/ext/openssl/openssl.c:545: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:545: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:551: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:551: error: 'struct php_x509_request' has no member named 'config_filename'
/opt/php-5.2.6/ext/openssl/openssl.c:551: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:551: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:551: error: too many arguments to function 'php_openssl_config_check_syntax'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_dispose_config':
/opt/php-5.2.6/ext/openssl/openssl.c:559: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:560: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:561: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:563: error: 'struct php_x509_request' has no member named 'global_config'
/opt/php-5.2.6/ext/openssl/openssl.c:564: error: 'struct php_x509_request' has no member named 'global_config'
/opt/php-5.2.6/ext/openssl/openssl.c:565: error: 'struct php_x509_request' has no member named 'global_config'
/opt/php-5.2.6/ext/openssl/openssl.c:567: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:568: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:569: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_x509_from_zval':
/opt/php-5.2.6/ext/openssl/openssl.c:862: warning: passing argument 1 of 'PEM_ASN1_read_bio' from incompatible pointer type
/usr/include/openssl/pem.h:417: note: expected 'void * (*)(void **, const unsigned char **, long int)' but argument is of type 'char * (*)()'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_make_REQ':
/opt/php-5.2.6/ext/openssl/openssl.c:1673: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:1673: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:1677: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:1681: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:1681: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:1685: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:1816: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'zif_openssl_csr_sign':
/opt/php-5.2.6/ext/openssl/openssl.c:2044: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:2048: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:2049: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:2049: error: 'struct php_x509_request' has no member named 'extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:2055: error: 'struct php_x509_request' has no member named 'digest'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'zif_openssl_csr_new':
/opt/php-5.2.6/ext/openssl/openssl.c:2110: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2111: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2115: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2118: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2127: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:2130: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:2130: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:2131: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:2133: error: 'struct php_x509_request' has no member named 'request_extensions_section'
/opt/php-5.2.6/ext/openssl/openssl.c:2137: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2137: error: 'struct php_x509_request' has no member named 'digest'
/opt/php-5.2.6/ext/openssl/openssl.c:2147: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2148: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2150: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2157: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'php_openssl_generate_private_key':
/opt/php-5.2.6/ext/openssl/openssl.c:2406: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:2408: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:2412: error: 'struct php_x509_request' has no member named 'req_config'
/opt/php-5.2.6/ext/openssl/openssl.c:2412: error: 'struct php_x509_request' has no member named 'section_name'
/opt/php-5.2.6/ext/openssl/openssl.c:2415: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2416: error: 'struct php_x509_request' has no member named 'priv_key_type'
/opt/php-5.2.6/ext/openssl/openssl.c:2418: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2418: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:2419: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2425: error: 'struct php_x509_request' has no member named 'priv_key_bits'
/opt/php-5.2.6/ext/openssl/openssl.c:2429: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2430: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2447: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2448: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'zif_openssl_pkey_new':
/opt/php-5.2.6/ext/openssl/openssl.c:2521: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c:2523: error: 'struct php_x509_request' has no member named 'priv_key'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'zif_openssl_pkey_export_to_file':
/opt/php-5.2.6/ext/openssl/openssl.c:2564: error: 'struct php_x509_request' has no member named 'priv_key_encrypt'
/opt/php-5.2.6/ext/openssl/openssl.c: In function 'zif_openssl_pkey_export':
/opt/php-5.2.6/ext/openssl/openssl.c:2615: error: 'struct php_x509_request' has no member named 'priv_key_encrypt'
make: *** [openssl.lo] Error 1

在網(wǎng)上查了好久,基本沒有給出解決辦法,就是讓重新安裝一個PHP。

有沒有其它的不安裝PHP的方法。

回答
編輯回答
櫻花霓

你安裝這個擴展的命令是什么
可以通過 phpize安裝擴展 安裝步驟

phpize
cd  openssl
./configure --with-php-config=/usr/local/php/bin/php-config
make  && make install
2018年2月4日 23:36