使用phpize建立php扩展,执行make后报错,错误如下,求解

/usr/local/include/php/Zend/zend_API.h:65:23: error: ‘zif_say_hello’ undeclared here (not in a function)
#define ZEND_FN(name) zif_##name
^
/usr/local/include/php/Zend/zend_API.h:71:69: note: in definition of macro ‘ZEND_FENTRY’
#define ZEND_FENTRY(zend_name, name, arg_info, flags) { #zend_name, name, arg_info, (zend_uint) (sizeof(arg_info)/sizeof(struct _zend_arg_info)-1), flags },
^
/usr/local/include/php/Zend/zend_API.h:77:56: note: in expansion of macro ‘ZEND_FN’
#define ZEND_FE(name, arg_info) ZEND_FENTRY(name, ZEND_FN(name), arg_info, 0)
^
/usr/local/include/php/main/php.h:352:18: note: in expansion of macro ‘ZEND_FE’
#define PHP_FE ZEND_FE
^
/usr/local/php/ext/my_module/my_module.c:145:2: note: in expansion of macro ‘PHP_FE’
PHP_FE(say_hello, NULL)
^
make: *** [my_module.lo] Error 1

解决方法

下载zlib-1.2.3.tar.gz放在/usr/local目录下执行以下命令:
tar -zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
vi Makefile
找到 CFLAGS=-O3 -DUSE_MMAP
在后面加入-fPIC,即变成CFLAGS=-O3 -DUSE_MMAP -fPIC
make && make install

然后再进入/usr/local/httpd-2.4.3这个目录执行下面的语句:
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-pcre=/usr/local/pcre/bin/pcre-config --with-zlib-1.2.3=/usr/local/zlib-1.2.3 --enable-so
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网