編碼的世界 / 優質文選 / 文明

Centos7 下安裝PHP7 phpredis擴展報錯解決辦法 致命錯誤:ext/standard/php_smart_str.h


2022年5月19日
-   

 
php7編譯安裝phpredis擴展報一下錯誤的解決辦法
[root@************ phpredis-2.2.8]# make
/bin/sh /usr/local/src/phpredis-2.2.8/libtool mode=compile cc -I. -I/usr/local/src/phpredis-2.2.8 -DPHP_ATOM_INC -I/usr/local/src/phpredis-2.2.8/include -I/usr/local/src/phpredis-2.2.8/main -I/usr/local/src/phpredis-2.2.8 -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /usr/local/src/phpredis-2.2.8/redis.c -o redis.lo
mkdir .libs
cc -I. -I/usr/local/src/phpredis-2.2.8 -DPHP_ATOM_INC -I/usr/local/src/phpredis-2.2.8/include -I/usr/local/src/phpredis-2.2.8/main -I/usr/local/src/phpredis-2.2.8 -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /usr/local/src/phpredis-2.2.8/redis.c -fPIC -DPIC -o .libs/redis.o
In file included from /usr/local/src/phpredis-2.2.8/redis.c:27:0:
/usr/local/src/phpredis-2.2.8/common.h:3:40: 致命錯誤:ext/standard/php_smart_str.h:沒有那個文件或目錄
#include <ext/standard/php_smart_str.h>
^
編譯中斷。
make: *** [redis.lo] 錯誤 1

解決辦法,因為最新的 phpredis 分了幾大分支,針對最新的PHP穩定發行版 php7 有專門為php7的分支,所以我們從github拉下phpredis 源碼
 
git clone https://github.com/phpredis/phpredis
/usr/local/php7/bin/phpize #找不到phpize的路徑可用whereis命令查看:whereis phpize 得到路徑 或者 find / -name phpize 得到路徑
./configure with-php-config=/usr/local/php/bin/php-config #此處為php-config的路徑,可用whereis php-config查看路徑 或者 find / -name phpize 得到路徑
make && make install
success !

然後看到了擴展目錄的顯示,就說明安裝成功了
轉載: (極安全) www.jisec.com

熱門文章