php8安装fileinfo扩展失败

报错信息:
In file included from /usr/include/string.h:633,
from /usr/local/php-8.1.0/include/php/main/../main/php_config.h:2210,
from /usr/local/php-8.1.0/include/php/Zend/zend_config.h:1,
from /usr/local/php-8.1.0/include/php/Zend/zend_portability.h:43,
from /usr/local/php-8.1.0/include/php/Zend/zend_types.h:25,
from /usr/local/php-8.1.0/include/php/Zend/zend.h:27,
from /usr/local/php-8.1.0/include/php/main/php.h:31,
from /usr/local/soft/php-8.1.0/ext/fileinfo/libmagic/config.h:1,
from /usr/local/soft/php-8.1.0/ext/fileinfo/libmagic/file.h:36,
from /usr/local/soft/php-8.1.0/ext/fileinfo/libmagic/softmagic.c:32:
/usr/local/soft/php-8.1.0/ext/fileinfo/libmagic/softmagic.c:507:7: error: expected identifier or ‘(’ before ‘extension
char *strndup(const char *, size_t);
^~~~~~~
/usr/local/soft/php-8.1.0/ext/fileinfo/libmagic/softmagic.c:510:1: error: expected identifier or ‘(’ before ‘extension
strndup(const char *str, size_t n)
^~~~~~~
make: *** [libmagic/softmagic.lo] 错误 1

解决方案:
./configure --with-php-config=/www/server/php/81/bin/php-config

执行这个命令

sed -i "s#CFLAGS = -g -O2#CFLAGS = -std=c99 -g#g" Makefile

make && make install

posted @ 2024-10-16 17:59  TaylorSWMM  阅读(23)  评论(0编辑  收藏  举报