Ubuntu下PHP的扩展
Ubuntu版本:14.04
1. 下载php-5.5.10.tar.bz2,并解压。
2. 终端进入解压后的目录php-5.5.10,运行configure。(输入命令./configure)
3. 依次输入命令make/make install。成功安装php后继续往下执行(输入"php -v"命令可判断是否成功安装了php)。
4. 进入ext目录,输入命令:./ext_skel --extname=myextension。(myextension为扩展模块的名字)。命令执行成功后,会生成一个myextension目录。
5. 进入myextension目录,编辑config.m4文件。
取消“PHP_ARG_ENABLE(hello, whether to enable hello support,”和“[ --enable-hello Enable hello support])”这两行的注释。(去掉这两行前的“dnl”即可)
如果扩展函数需要调用到动态连接库文件,如:调用/usr/local/lib目录下的libtest.dll。那么在config.m4的“PHP_NEW_EXTENSION(.....)”这一行上添加以下几行:
PHP_ADD_LIBRARY_WITH_PATH(test, /usr/local/lib, MYEXTENSION_SHARED_LIBADD)
PHP_ADD_INCLUDE(/usr/local/lib)
PHP_SUBST(MYEXTENSION_SHARED_LIBADD)
本示例中为了方便,不添加动态链接库。
6. 执行phpize。如果提示“phpize command not found”,说明php5-dev没有安装(安装:apt-get install php5-dev)。
7. 编辑php_myextension.h文件(红色方框部分为所添加的内容)。
8. 编辑myextension.c文件(红色方框部分为所添加的内容)。
9. 输入命令:./configure。(注意:是在目录myextension下)
10. 依次输入命令make/make install。命令执行成功后,在myextension/modules目录下生成了myextension.so动态连接库。
11. 拷贝myextension.so文件到/usr/lib/php5/modules目录下。(没有该目录就新建)
12. 编辑php.ini。(如果未安装apache2,那么该文件在/etc/php5/cli/目录下,如果安装了,则还会有一个php.ini文件在/etc/php5/apache2/目录)如果有两个php.ini,则尽量保证这两个文件一致。
添加两行:
extension_dir = /usr/lib/php5/modules/
extension = myextension.so
13. 输入命令:php -r "echo myaddfunc(1,2);" 。如果终端打印出3则php扩展成功。
Ubuntu下PHP的扩展的更多相关文章
- ubuntu下安装pdo扩展
ubuntu下安装好LAMP后默认情况没有安装mysql_pdo扩展,以下是安装 步聚,在终端输入以下命令 1.pecl search pdo 2.sudo pecl install pdo 当出现E ...
- ubuntu下安装php扩展
参考原文地址:http://www.php.cn/php-weizijiaocheng-341528.html 发现在mac上好像不太行,然后按照下面的可以,写下来与大家分享 利用ubuntu的软件包 ...
- ubuntu下安装amqp扩展
目录 环境 下载扩展: 安装amqp: 验证 环境 系统 ubuntu 16.04 php 7.1 下载扩展: sudo apt-get -y install gcc make autoconf li ...
- [PHP] ubuntu下使用uuid扩展获取uuid
1.php生成uuid网上大部分是使用随机数md5截取的,很有可能会重复冲突 2.uuid的组成中最重要的一个是机器码,大部分是网卡MAC地址, php无法获取到机器码,因此不能直接使用代码来生成一个 ...
- ubuntu下安装php-curl扩展
查找包 apt-cache是linux下的一个apt软件包管理工具,它可查询apt的二进制软件包缓存文件.APT包管理的大多数信息查询功能都可以由apt-cache命令实现,通过apt-cache命令 ...
- ubuntu下安装apcu扩展
apcu前身是apc,apc分为系统缓存和用户缓存 1.系统缓存是指PHP执行时增加缓存,减少PHP文件的反复检查和编译,从而达到系统加速的目的. 2.用户缓存是指,PHP代码中将数据写入缓存,是用户 ...
- ubuntu下安装redis扩展
采用源码编译安装 下载 下载redis源码包到本地一个临时目录 git clone https://github.com/phpredis/phpredis.git 移动文件到合适目录 mv phpr ...
- ubuntu下安装mongo扩展
安装openssl apt-get install openssl libssl-dev libssl0.9.8 libgtk2.0-dev 安装php-pear apt-get install ph ...
- ubuntu下安装ffmpeg扩展
可通过PPA进行安装 sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next sudo apt-get update sudo apt-get ...
随机推荐
- GIt 从入门到放弃
一.注册github账号 github网址https://github.com/ 下一步 然后,你的邮箱会收到一封邮件,进行邮箱验证就行了 二.创建github仓库 登录你的github,在首页的右方 ...
- weblogic jetty debug 远程
- paip java.net.SocketException No buffer space available的解决办法及总结
java.net.SocketException No buffer space available的解决办法及总结 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来 ...
- hibernate(二)一级缓存和三种状态解析
序言 前一篇文章知道了什么是hibernate,并且创建了第一个hibernate工程,今天就来先谈谈hibernate的一级缓存和它的三种状态,先要对着两个有一个深刻的了解,才能对后面我要讲解的一对 ...
- FindFriendsServer服务搭建
本文介绍如何搭建FindFriendsServer(https://github.com/hnrainll/FindFriendsServer)所需的环境. 环境需要: Windows+Apache+ ...
- Mars的自语重出江湖,祝大家端午节安康
上一篇博客似乎已是非常久远的回忆了,不再码字也已经很多年.<三国演义>里,刘备投靠曹操的那段时间里,2个兄弟问刘备未来,刘备说: 屈身守分,以待天时,不可与命争也. 这样一个时代,每个老百 ...
- Java和.net常用开发框架组合
Java: SSH和SSM 1.SSH是Spring(控制)+Struts(展现)+Hibernate(ORM)的缩写:此组合更严谨,适合企业级行业开发等等.2.SSM是Spring(控制)+Spri ...
- Activiti 查询最新版本的流程定义
package com.mycom.processDefinition; import java.io.File; import java.io.IOException; import java.io ...
- 电子病历,到底是用BS还是CS
电子病历,到底是用BS还是CS 袁永福 2014-8-19 前言:前几天下午去开发医疗软件的S公司,旁听了他们的内部技术讨论会议.他们目前的电子病历是B/S架构,会上一群人讨论起用C/S重构电子病历系 ...
- 由1433端口入侵,浅谈sqlserver安全 (转)
前几日笔者在家里的PC上安装了Windows7旗舰版的操作系统,顺便搭了sqlserver2008和vs2010的开发环境,本打算业余时 间可以方便开发.学习.可是不尽人意啊!用了不到两天,居然突然出 ...