编译php扩展
在php编译安装好的情况下php扩展编译
php的很多模块都是以php的扩展形式来进行的。所以在php安装好的环境下需要用到之前安装时没有编译安装的php扩展的时候,这个时候编译安装php扩展就显得尤为的重要,因为不可能再次编译安装php环境。
一、在windows下编译安装php扩展:1、使用phpinfo()函数来查看当前编译php的环境使用的编译器选择合适的扩展包:
Compiler MSVC9 (Visual C++ 2008) 2、查看扩展使用的是TS/NTS VC9也是选择合适的编的扩展包
Zend Extension Build API220100525,TS,VC9 3、php的版本信息
4、根据上面3项的信息到官方下载.dll扩展包5、将下载后的.dll文件复制到php的扩展目录中,这个信息也是可以通过phpinfo()函数来查看的。
extension_dir c:/wamp/bin/php/php5.4.12/ext/ c:/wamp/bin/php/php5.4.12/ext/ 6、修改php的配置文件(php.ini)
extension=*.dll【注意】很多时候,我们修改完配置文件之后重新启动Apache后还是不管用,甚至是删除php的配置文件还是没有出现任何问题,这个时候我们应该想到我们修改的加载的配置文件是不是有问题,因为在安装的时候,配置文件可能会出现修改。这个时候最权威的就是查看php的信息phpinfo();
Loaded Configuration File C:\wamp\bin\apache\apache2.4.4\bin\php.ini 7、以上6部完成之后记得重新启动服务,加载php
二、Linux下编译安装php扩展1、可以根据上述信息选择合适的源码包,这个要求不是很严格。2、下载后的扩展包中没有configure文件,这个时候就是要自己用php生成运行:/usr/local/php/bin/php.ize这样就会生成comfigure文件3、配置因为每个软件的配置都可能不一样,这个时候就需要根据具体的情况来进行配置./configure --help来获取配置信息,在配置的时候,出现什么问题就用这个命令获取帮助,在进行配置。这个时候基本上也用不上baidu,Google了,实在不行可以Google获取帮助。注意:一般要配置--with-php-config=/usr/local/php/bin/php.config4、编译make5、安装make install(这个时候会出现安装后的.so文件目录)6、修改配置文件extension=make insall 安装后的.so文件目录如下面:extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
7、重新启动服务(如果是nginx记得重新启动php进程)
编译php扩展的更多相关文章
- Memcached 笔记与总结(2)编译 php-memcache 扩展
环境:CentOS 6.6 + Apache 2.2.21 + PHP 5.3.10 php-memcache 是 php 写的 memcached 的客户端,以扩展的形式发布. 对于正在运行的 ph ...
- windows平台使用Microsoft Visual C++ Compiler for Python 2.7编译python扩展
在windows平台上安装python c extension的扩展包是件很痛苦的事情,一般通过安装vc/vs系列来编译C扩展,不过安装包都比较大.或者通过mingw编译,不过有时会在兼容性上出现点问 ...
- PHP7 学习笔记(九)phpsize动态编译openssl扩展 (微信公众平台)
先吐槽,微信公众平台授权出问题了,尽然访问不了 一.问题描述: 使用PHP中的库函数file_get_contents时出现Unable to find the wrapper "https ...
- php编译安装扩展redis及swoole
一.安装redis扩展 下载redis扩展包以及解压 wget https://github.com/edtechd/phpredis/archive/php7.zip unzip php7.zip ...
- 编译PHP扩展的方式
编译的两种方式其实很简单,这里记录只是为了以后遇到这种情况时不加思索地运用上,而不是花费一些时间去回忆. C/C++程序编译有两种方式:动态编译.静态编译.PHP 是使用 C/C++程序开发的一门脚本 ...
- Hawk 6. 编译和扩展开发
Hawk是开源项目,因此任何人都可以为其贡献代码.作者也非常欢迎使用者能够扩展出更有用的插件. 编译 编译需要Visual Stuido,版本建议使用2015, 2010及以上没有经过测试,但应该可以 ...
- 用pecl/pear独立编译PHP扩展 vs. 把扩展编译到PHP内核中
将扩展编译到php内部的方式会提高php运行扩展的效率,但是每次需要新添加扩展时都需要把php以及之前添加的所有扩展重新编译一边,非常麻烦. 独立编译扩展,php外部调用扩展的方式虽然会牺牲一点点的性 ...
- windows 下编译php扩展库pecl里的扩展memcache
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内 ...
- 编译PHP扩展amqp & php消息队列 rabbitmq
首先介绍下AMQP: AMQP——高级消息队列协议,目前比较有名气的实现大概就是大名鼎鼎的RabbitMQ了. RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统.他遵循Mozilla ...
- PHP的安装,编译,扩展工具
1.基本容易混淆的概念 pecl php的社区贡献扩展库,全称为PHP Extension Community Library, 是php的底层库, 使用C语言编写 pear php的应用扩展库,全称 ...
随机推荐
- Android - Earthquake工程(地震监测) 的 对
Earthquake工程(地震监测) 的 对 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24465487 Earthquake ...
- silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发)
原文:silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发) 前面我们画了一只会飞动的小鸟,今天我们在目标是一个会发光的太阳.本章节的动画虽然简单,但是实现的效果可是一点也不打折 ...
- 绑定到异步的ObservableCollection
原文:绑定到异步的ObservableCollection 在进行WPF开发过程中,需要从一个新的线程中操作ObservableCollection,结果程序抛出一个NotSupportedExcep ...
- DotNetBar for Windows Forms 14.0.0.15_冰河之刃重打包版发布
关于 DotNetBar for Windows Forms 14.0.0.15_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版------------- ...
- Expression Blend学习5控件
原文:Expression Blend学习5控件 Expression Blend ButtonStyle- TextButton 本章以TextButton为例,讲解如何最简单,最快速的制作一个专业 ...
- vs2015 生成 cordova 页面中文乱码
原文:vs2015 生成 cordova 页面中文乱码 1.用VS2015新创建Cordova项目,启动运行index.html 中文显示乱码 解决方案: 1.使用text/html通用解析编码utf ...
- 如何将svg转换为xaml
原文:如何将svg转换为xaml 1 下载Inkscape 2 用Inkscape打开svg,另存为xaml 注意:复杂的svg图转换完会出现类似下面的xaml,wpf/silverlight是无法解 ...
- SQL Server 2016新特性:DROP IF EXISTS
原文:SQL Server 2016新特性:DROP IF EXISTS 在我们写T-SQL要删除某个对象(表.存储过程等)时,一般会习惯先用IF语句判断该对象是否存在,然后DROP,比如: 旧 ...
- 微信小程序把玩(二十二)action-sheet组件
原文:微信小程序把玩(二十二)action-sheet组件 action-sheet组件是从底部弹出可选菜单项,估计也是借鉴IOS的设计添加的,action-sheet有两个子组件, action-s ...
- NuGet安装包重新安装
Update-Package -reinstall 引用: https://docs.microsoft.com/zh-cn/nuget/consume-packages/reinstalling-a ...