用 phpize 编译共享 PECL 扩展库

有时候不能用 pecl 安装命令。这可能是因为在防火墙后面,或者是因为想要安装的扩展库还没有 PECL 兼容的包,例如 SVN 中尚未发布的扩展库。如果要编译这种扩展库,可以用更底层的编译工具来手工进行编译。

phpize 命令是用来准备 PHP 扩展库的编译环境的。下面例子中,扩展库的源程序位于 extname 目录中:

$ cd extname
$ phpize
$ ./configure
$ make
# make install

成功的安装将创建 extname.so 并放置于 PHP 的扩展库目录中。需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此扩展库。

如果系统中没有 phpize 命令并且使用了预编译的包(例如 RPM),那要安装 PHP 包相应的开发版本,此版本通常包含了 phpize 命令以及相应的用于编译 PHP 及其扩展库的头文件。

使用 phpize --help 命令可以显示此命令用法。

时间: 2024-08-04 18:15:21

用 phpize 编译共享 PECL 扩展库的相关文章

Windows 平台VS2015 编译Opencv 引入扩展库opencv_conrtib

项目需要用到Opencv库,并且用到xfeature2d子模块.官网提供的可直接下载的库文件并不包含扩展模块,花了一个晚上编译出带扩展 模块版本,在此记录编译过程,以备后用.OpenCV版本:3.1.0 一.下载安装CMake 下载地址是https://cmake.org/download/ 如下图所示下载cmake-3.11.1-win64-x64.msi 图1 CMake下载示意图 下载Cmake(准确说应该是CMake Gui)默认安装即可,CMake GUI 安装完成后运行界面如下 图2

PHP如何添加自带的扩展库

当服务器上PHP已经安装好,需要额外添加PHP扩展时怎么办?不需要重新安装PHP,有了phpize我们可以在原有的PHP基础之上直接安装扩展库. 这次编译仅仅只是单独编译PHP的扩展库,接下来将编译好的扩展库加入到现在运行的php中,不对现在运行的php重新编译,所以没有一点的影响. 下面我们演示安装xsl的扩展(不一定常用,仅做为一个范例) 做法一: 1.找到当前运行的php版本的源代码目录,如php-5.2.3.进入xsl扩展库目录. $cd /home/pkgs/php-5.3.3/ext

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

Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度. 本篇主要简述编译php及其扩展memcache,在阅读后面内容之前,建议先阅读一下官方文档介绍的“从源程序编译”.下面我们以php-5.3.10为例. 一.编译环境 根据你的php版本选择相应的编译器: php 5.3-5.4 :Visual C++

Linux下已编译PHP增加扩展so的方法,关键phpize 和config.m4

LINUX下PHP已经编译,如何新增so扩展. 用到的一个sh:/usr/local/php5/bin/phpize 原理:用phpize在压缩包里面找到对应的对应的扩展文件夹,在里面执行phpize,具体步骤: PHP安装路径:/usr/local/php5 PHP源码路径:/home/default7/lamp/php-5.5.13 扩展假设zlib:/home/default7/lamp/php-5.5.13/ext/zlib 执行代码: ln -s /usr/local/php5/bin

PHP mysqli 扩展库(面向对象/数据库操作封装/事务控制/预编译)

1.和mysql扩展库的区别: (1   安全性.稳定性更高 (2  提供了面向对象和面向过程两种风格 2.php.ini  中的  extension=php_mysqli.dll 解除封印 3.面向对象:查询列表 1 <?php 2 3 //mysqli 操作数据(面向对象风格) 4 5 #1.创建Mysql对象 6 7 $mysqli=new MySQLi("127.0.0.1","root","daomul","test&

编译python扩展库遇到"unable to find vcvarsall.bat"的解决办法

最近想要学习一下python的Paramiko库,Paramiko依赖PyCrypto,在编译PyCrypto时碰到了问题,大体上的意思就是: unable to find vcvarsall.bat 问题分析: 追踪错误提示内容,定位到如下文件 python_path/lib/distutils/msvc9compiler.py 简单分析一下源码,发现在编译扩展库时,会通过此文件中提供的函数确定vcvarsall.bat的路径来设置vc的环境变量,msvc9compiler.py中定义了一个全

PHP安装扩展mcrypt以及相关依赖项 【PHP安装PECL扩展的方法】

一:Mcrypt简介 Mcrypt是PHP的一个扩展,完成了常用加密算法的封装.其实该扩展是对mcrypt标准类库的封装,mcrypt完成了相当多的常用加密算法,如DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 和 GOST加密算法,并且提供了CBC.OFB.CFB 和 ECB 四种块加密的模型. 二:安装libmcrypt依赖库 要使用该扩展,必须首先安装mcrypt标准

php7的扩展库安装方法

今天的知识点:1.php的再次编译不会对现有的php业务有影响,只有正式kill -USR2 pid才会有影响!2.pear,pecl都是php的扩展包,可以理解为,最直接的表述:Pear是PHP的上层扩展,Pecl是PHP的底层扩展. 这两种方法其实都是为特定的应用提供现成的函数或者类,本质上来说都是一样的. php 安装扩展有两种方法, 第一种,直接pecl直接安装,首先,查找pecl命令所在,一般它是在PHP的安装目录(举例:php目录 为/usr/local/php7)bin/的 . 如

Linux下php7的扩展库安装方法

1.php的再次编译不会对现有的php业务有影响,只有正式kill -USR2 pid才会有影响!2.pear,pecl都是php的扩展包,可以理解为,最直接的表述:Pear是PHP的上层扩展,Pecl是PHP的底层扩展.这两种方法其实都是为特定的应用提供现成的函数或者类,本质上来说都是一样的.php 安装扩展有两种方法, 第一种,直接pecl直接安装,首先,查找pecl命令所在,一般它是在PHP的安装目录(举例:php目录 为/usr/local/php7)bin/的 . 如果没有,按以下方法