Rumah > pembangunan bahagian belakang > tutorial php > php 如何单独编译 mysqlnd 扩展?

php 如何单独编译 mysqlnd 扩展?

WBOY
Lepaskan: 2016-07-06 13:51:41
asal
1987 orang telah melayarinya

最近折腾 php,下载的 php 7.0.8

编译时只开启了 php-fpm

<code>./configure --prefix=/usr/lcoal/php --enable-fpm
</code>
Salin selepas log masuk
Salin selepas log masuk

想通过 phpize 来添加各种扩展,但是在 mysql 支持上遇到了问题
在 ext/mysqlnd 目录下执行了 phpize ,生成了 configure 之后
在 ./configure 时,先是提示无法找到 openssl 的一个头文件:

<code>configure: error: Cannot find OpenSSL's <evp.h>
</evp.h></code>
Salin selepas log masuk
Salin selepas log masuk

手动修改了 configure 脚本中的变量:

<code>OPENSSL_INCDIR=/usr
OPENSSL_LIBDIR=/usr/lib64</code>
Salin selepas log masuk
Salin selepas log masuk

最终编译成功,在 php.ini 里添加

<code>extension=mysqlnd.so</code>
Salin selepas log masuk
Salin selepas log masuk

或者

<code>zend_extension=mysqlnd.so</code>
Salin selepas log masuk
Salin selepas log masuk

都无法加载

请教一下, mysqlnd 和 fpm 都只能第一次编译 php 的时候就要在 configure 里加上么?

回复内容:

最近折腾 php,下载的 php 7.0.8

编译时只开启了 php-fpm

<code>./configure --prefix=/usr/lcoal/php --enable-fpm
</code>
Salin selepas log masuk
Salin selepas log masuk

想通过 phpize 来添加各种扩展,但是在 mysql 支持上遇到了问题
在 ext/mysqlnd 目录下执行了 phpize ,生成了 configure 之后
在 ./configure 时,先是提示无法找到 openssl 的一个头文件:

<code>configure: error: Cannot find OpenSSL's <evp.h>
</evp.h></code>
Salin selepas log masuk
Salin selepas log masuk

手动修改了 configure 脚本中的变量:

<code>OPENSSL_INCDIR=/usr
OPENSSL_LIBDIR=/usr/lib64</code>
Salin selepas log masuk
Salin selepas log masuk

最终编译成功,在 php.ini 里添加

<code>extension=mysqlnd.so</code>
Salin selepas log masuk
Salin selepas log masuk

或者

<code>zend_extension=mysqlnd.so</code>
Salin selepas log masuk
Salin selepas log masuk

都无法加载

请教一下, mysqlnd 和 fpm 都只能第一次编译 php 的时候就要在 configure 里加上么?

  1. openssl 无法找到 是php本身没有ssl扩展 需要先装ssl扩展

  2. 不需要修改configure文件

  3. 理论上所有扩展都是可以后期动态编译或者添加

完全可以后期增加拓展,不要make install操作就好了

感觉你先要安装openssl的扩展再按照configure帮助中提供的一些辅助方法 来编译吧 openssl安装方法
然后你就可以类似的安装mysqlnd扩展

这两个扩展都有个前提 你要安装ssl扩展先要安装openssl ,你要安装mysqlnd扩展先要安装mysql

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan