jonvi 发表于 2018-12-21 08:20:27

php安装curl问题

  这两天在服务器为php安装curl拓展是遇到一个问题。很是纠结了一下...

  系统是centos 6.4 64位系统,php版本5.3.3,因需要安装curl拓展,但是使用5.3.3的源码包安装curl拓展时make报错:/php-5.3.3/ext/curl/interface.c:319: 警告:初始化丢弃了指针目标类型的限定
/php-5.3.3/ext/curl/interface.c: 在函数‘curl_write’中:
/php-5.3.3/ext/curl/interface.c:930: 错误:‘zend_fcall_info’没有名为‘object_ptr’的成员
/php-5.3.3/ext/curl/interface.c: 在函数‘curl_progress’中:
/php-5.3.3/ext/curl/interface.c:1006: 错误:‘zend_fcall_info’没有名为‘object_ptr’的成员
/php-5.3.3/ext/curl/interface.c: 在函数‘curl_read’中:
/php-5.3.3/ext/curl/interface.c:1080: 错误:‘zend_fcall_info’没有名为‘object_ptr’的成员
/php-5.3.3/ext/curl/interface.c: 在函数‘curl_write_header’中:
/php-5.3.3/ext/curl/interface.c:1157: 错误:‘zend_fcall_info’没有名为‘object_ptr’的成员
make: *** 错误 1
--------------------------------------------
  后使用php5.2.17版本源码包安装了curl拓展。
  #cdphp-5.2.17/ext/curl
  #/usr/local/php/bin/phpize
  #./configure--with-curl=/usr/local/curl/   --with-php-config=/usr/local/php/bin/php-config
  #make
  #make test
  #make install
  然后在php.ini文件添加:
  【curl】
  extension = "curl.so"
  
---------------------------------------------------
但是使用php -v查看是发现如下报错:
PHP Warning:PHP Startup: curl: Unable to initialize module
Module compiled with module API=20060613
PHP    compiled with module API=20090626
These options need to match
in Unknown on line 0
PHP Warning:PHP Startup: curl: Unable to initialize module
Module compiled with module API=20060613
PHP    compiled with module API=20090626
These options need to match
in Unknown on line 0
PHP 5.3.3 (cli) (built: Jul 12 2013 20:35:47)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

  错误信息是说php版本和模块版本不兼容,然后就一直在查找资料怎样match。尝试多种方法无解后,无意看到国外一个网站上写的"yum install xxx",在自己服务器尝试yum install php-curl后,再次使用php -v已经没有上述错误了。
  之后重启nginx和php,curl拓展已经可以正常使用。
      有时候遇到错误,一个思路走不通的话,可以换个思路,往往就是很简单的一条命令就解决了问题。

     

  




页: [1]
查看完整版本: php安装curl问题