PHP源码编译pdo、pdo_mysql

安装好nginx+php+mysql开发环境之后我们运行会发现我们还是不能连接数据库,这是因为我们并没有安装pdo和pdo_mysql的扩展。我们在nginx的web目录下面新建我们的index.php文件,输入phpinfo();然后在浏览器中访问出现php的基本信息页面如下:
这里写图片描述
然后我们按下Ctrl+F查找下pdo和pdo_mysql我们会发现我们无法找到我们需要信息。现在我们就来安装我们的pdo和pdo_mysql.
进入我们php源码解压目录:
cd /home/softmake/php-5.6.14
进入源码ext目录
cd ext
执行phpize生成configure文件
phpize(此命令执行完成之后我们可以发现我们的目录下面多出来一个configure文件,此文件是我们需要编译使用的)
接下来我们就是编译安装了
输入命令:./configure -with-php-config=/usr/local/bin/php-config -enable-pdo=shared
安装命令:make && make install
这里写图片描述
出现如上图所示情况表示我们安装成成功!其中 “/usr/local/lib/php/extensions/no-debug-non-zts-20131226/“是我们需要的扩展目录。
继续编译安装我们的pdo_mysql。
cd /home/softmake/php-5.6.14/ext/pdo_mysql
phpize
./configure -with-php-config=/usr/local/bin/php-config -with-pdo-mysql
(注:网上很多多是提示如下命令“./configure -with-php-config=/usr/local/bin/php-config -with-pdo-mysql=[dir]“最后这个dir是mysql的安装路径,我们不填的话会自动去寻找。填了就会使用我们输入的地址。这个就很坑爹了,因为往往你会发现你不知道你的mysql安装在啥地方,我就是这样的使用了很多的地址都没有正确的最后没办法就没有填写才正常)
make && make install
这里写图片描述
好了我们的编译安装时正常的乜有出现什么问题。同样的/usr/local/lib/php/extensions/no-debug-non-zts-20131226/使我们的扩展插件安装位置。
最后我们找到我们的php.ini文件加入两行
extension = pdo.so
extension = pdo_mysql.so
最后我们重启下我们的php-fpm服务
service php-fpm restart
在浏览器刷新下我们的phpinfo页面再次查找下我们pdo会发现我们的页面会有如下图所示出现:
这里写图片描述
是不是看到我们的PDO和pdo_mysql了。大功告成了!!!接下来我们可以用我们优雅的lavarel框架来写一个我们自己的blog系统了。是不是很期待呢。。。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
交叉编译 lighttpd 和 php_fpm 需要进行以下步骤: 1. 安装交叉编译工具链:根据目标平台选择合适的交叉编译工具链,例如 arm-linux-gnueabi-gcc 或者 aarch64-linux-gnu-gcc 等,并将其添加到 PATH 环境变量中。 2. 下载 lighttpd 和 php 源码:从官网下载 lighttpd 和 php源码包,例如 lighttpd-1.4.54.tar.gz 和 php-7.4.16.tar.gz。 3. 解压源码包:使用 tar 命令解压源码包,例如: ``` tar zxvf lighttpd-1.4.54.tar.gz tar zxvf php-7.4.16.tar.gz ``` 4. 进入 lighttpd 源码目录:进入解压后的 lighttpd 源码目录,例如: ``` cd lighttpd-1.4.54 ``` 5. 配置编译选项:使用交叉编译工具链配置编译选项,例如: ``` ./configure --host=arm-linux-gnueabi ``` 6. 编译 lighttpd:使用 make 命令编译 lighttpd,例如: ``` make ``` 7. 进入 php 源码目录:返回上级目录,进入解压后的 php 源码目录,例如: ``` cd ../php-7.4.16 ``` 8. 配置编译选项:使用交叉编译工具链配置编译选项,例如: ``` ./configure --host=arm-linux-gnueabi --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data --disable-short-tags --disable-phpdbg ``` 其中,--with-pdo-mysql 和 --with-mysqli 用于支持 MySQL 数据库,--with-openssl 用于支持 SSL/TLS 加密,--enable-fpm 和 --with-fpm-user、--with-fpm-group 用于编译 php_fpm。 9. 编译 php_fpm:使用 make 命令编译 php_fpm,例如: ``` make ``` 10. 将编译完成的 lighttpd 和 php_fpm 拷贝到目标平台上。 以上就是交叉编译 lighttpd 和 php_fpm 的步骤,需要注意的是,编译选项需要根据实际情况进行调整,例如根据目标平台选择合适的交叉编译工具链、选择需要支持的模块等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值