在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.config
4、编译make
5、安装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扩展的更多相关文章

  1. Memcached 笔记与总结(2)编译 php-memcache 扩展

    环境:CentOS 6.6 + Apache 2.2.21 + PHP 5.3.10 php-memcache 是 php 写的 memcached 的客户端,以扩展的形式发布. 对于正在运行的 ph ...

  2. windows平台使用Microsoft Visual C++ Compiler for Python 2.7编译python扩展

    在windows平台上安装python c extension的扩展包是件很痛苦的事情,一般通过安装vc/vs系列来编译C扩展,不过安装包都比较大.或者通过mingw编译,不过有时会在兼容性上出现点问 ...

  3. PHP7 学习笔记(九)phpsize动态编译openssl扩展 (微信公众平台)

    先吐槽,微信公众平台授权出问题了,尽然访问不了 一.问题描述: 使用PHP中的库函数file_get_contents时出现Unable to find the wrapper "https ...

  4. php编译安装扩展redis及swoole

    一.安装redis扩展 下载redis扩展包以及解压 wget https://github.com/edtechd/phpredis/archive/php7.zip unzip php7.zip ...

  5. 编译PHP扩展的方式

    编译的两种方式其实很简单,这里记录只是为了以后遇到这种情况时不加思索地运用上,而不是花费一些时间去回忆. C/C++程序编译有两种方式:动态编译.静态编译.PHP 是使用 C/C++程序开发的一门脚本 ...

  6. Hawk 6. 编译和扩展开发

    Hawk是开源项目,因此任何人都可以为其贡献代码.作者也非常欢迎使用者能够扩展出更有用的插件. 编译 编译需要Visual Stuido,版本建议使用2015, 2010及以上没有经过测试,但应该可以 ...

  7. 用pecl/pear独立编译PHP扩展 vs. 把扩展编译到PHP内核中

    将扩展编译到php内部的方式会提高php运行扩展的效率,但是每次需要新添加扩展时都需要把php以及之前添加的所有扩展重新编译一边,非常麻烦. 独立编译扩展,php外部调用扩展的方式虽然会牺牲一点点的性 ...

  8. windows 下编译php扩展库pecl里的扩展memcache

    Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内 ...

  9. 编译PHP扩展amqp & php消息队列 rabbitmq

    首先介绍下AMQP: AMQP——高级消息队列协议,目前比较有名气的实现大概就是大名鼎鼎的RabbitMQ了. RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统.他遵循Mozilla ...

  10. PHP的安装,编译,扩展工具

    1.基本容易混淆的概念 pecl php的社区贡献扩展库,全称为PHP Extension Community Library, 是php的底层库, 使用C语言编写 pear php的应用扩展库,全称 ...

随机推荐

  1. matlab 读写其他格式数据文件(excel)

    1. excel matlab和excel 中的数据互相导入 xlswrite() mat ⇒ excel 请问怎么把大容量的mat文件导出到excel文件中 – MATLAB中文论坛 % data. ...

  2. 对XAML进行编辑的辅助类(XamlHelper)

    原文:对XAML进行编辑的辅助类(XamlHelper) // XamlHelper.cs// --------------------------------------------// 对XAML ...

  3. wxWidgets编译和在VC 6.0中的配置

    1. 安装  运行wxMSW-2.8.3-Setup1.exe,将之安装到不带空格符号的目录中,本例为C:/wxWidgets-2.8.3:   2. 编译和配置 (1) 用VC6.0编译  进入C: ...

  4. σ 代数与测度(measures)

    1. definition Let A be a collection of subsets(集合的集合体,collection of subsets) of a sample space Ω,A i ...

  5. WPF刷新界面

    Winform 里有 Application.DoEvents();可刷新! WPF 里没这个,尽管可用委托实现多线程,但是刷新还是不行! 后来找到了 类似App.DoEvents()的方法(): 代 ...

  6. 通通玩blend美工(6)上——仿iPhone滚动选择器的ListBox(UI设计)

    原文:通通玩blend美工(6)上--仿iPhone滚动选择器的ListBox(UI设计) 好久没更新博客了,由于项目比较紧,期间收到不少园友的短消息,感谢大家对我的支持~~. 相信各位都在自己的神机 ...

  7. 插入2D点,在WPF中使用Bezier曲线

    原文Interpolate 2D points, usign Bezier curves in WPF Interpolate 2D points, usign Bezier curves in WP ...

  8. rdlc水晶报表在wpf里的使用

    1引用程序集 Microsoft.ReportViewer.WinForms 2 xaml 命名空间 xmlns:rv="clr-namespace:Microsoft.Reporting. ...

  9. Win8 Metro(C#)数字图像处理--3.2图像方差计算

    原文:Win8 Metro(C#)数字图像处理--3.2图像方差计算 /// <summary> /// /// </summary>Variance computing. / ...

  10. WebBrowser 的 DocumentCompleted事件不执行的解决方法

    原文:WebBrowser 的 DocumentCompleted事件不执行的解决方法 WebBrowser 的 DocumentCompleted事件不执行的解决方法: 使用WebBrowser的P ...