php扩展安装Api Version不匹配问题

10 篇文章 0 订阅

大家安装PHP扩展一般步骤应该都是如下:

1、phpize

2、./configure --with-php-config=/usr/local/php/bin/php-config

3、make & make install

这样基本都是成了

然而这次我安装pdo_mysql的时候出现了版本不匹配的问题:

PHP Warning:  PHP Startup: pdo_mysql: Unable to initialize module
Module compiled with module API=20151012
PHP    compiled with module API=20160303

意思是PHP编译版本号是20160303,而pdo_mysql模块编译版本是20151012,不匹配。

原因也是比较清楚,前俩天刚把php从5.6升级到了7.1, 用的是直接覆盖原来php文件的形式,可能phpize还是旧版的

查看了下/usr/local/php/bin/phpize的确是20151012,然后重新编译还是这个问题...,翻了下之前的执行记录,原来我输入的是phpize,用的是/usr/bin/phpize已经是20160303版本尴尬

那不是phpize的问题,那就是后面那个php-config的问题了,应为总共就这么几句命令..

继续查看/usr/local/php/bin/php-config

MacBook-Pro:pdo_mysql xueshengguo$ /usr/local/php/bin/php-config
Usage: /usr/local/php/bin/php-config [OPTION]
Options:
  --prefix            [/usr/local/php]
  --includes          [-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]
  --ldflags           []
  --libs              [  -lresolv -liconv -liconv -lm  -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm ]
  --extension-dir     [/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012]
  --include-dir       [/usr/local/php/include/php]
  --man-dir           [/usr/local/php/php/man]
  --php-binary        [/usr/local/php/bin/php]
  --php-sapis         [ cli fpm phpdbg cgi]
  --configure-options [--prefix=/usr/local/php --enable-fastcgi --enable-fpm]
  --version           [7.0.2]
  --vernum            [70002]

这版本是7.0.2

然后又用find找到另一个/usr/bin/php-config

MacBook-Pro:pdo_mysql xueshengguo$ /usr/bin/php
php         php-cgi     php-config  phpdbg      phpize      phpunit
xueshengguodeMacBook-Pro:pdo_mysql xueshengguo$ /usr/bin/php-config
Usage: /usr/bin/php-config [OPTION]
Options:
  --prefix            [/usr]
  --includes          [-I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib]
  --ldflags           [ -L/usr/local/Cellar/openssl/1.0.2h//lib]
  --libs              [  -lresolv -liconv -liconv -lcrypto -lssl -lcrypto -lm  -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm -lxml2 -lz -licucore -lm ]
  --extension-dir     [/usr/lib/php/extensions/no-debug-non-zts-20160303]
  --include-dir       [/usr/include/php]
  --man-dir           [/usr/share/man]
  --php-binary        [/usr/bin/php]
  --php-sapis         [ cli phpdbg cgi]
  --configure-options [--prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --sysconfdir=/private/etc --with-libdir=lib --enable-cli --with-iconv=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.Internal.sdk/usr --with-config-file-path=/etc --with-config-file-scan-dir=/Library/Server/Web/Config/php --with-libxml-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.Internal.sdk/usr --with-openssl=/usr/local/Cellar/openssl/1.0.2h/]
  --version           [7.1.0]
  --vernum            [70100]
这个版本看来对牢,然后开始的命令就换成:

1、phpize

2、./configure --with-php-config=/usr/bin/php-config

3、make & make install


问题解决。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李昂的数字之旅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值