linux下用phpize给PHP动态添加扩展】的更多相关文章

使用php的常见问题是编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,这里就需要用到phpize了. 如我想增加bcmath扩展的支持,这是一个支持大整数计算的扩展.windows自带而且内置,linux"本类函数仅在 PHP 编译时配置了 --enable-bcmath 时可用"(引号内是手册中的话) 注意,有些扩展需要和php的版本保持一致才可以的. 解压bcmath包,进入里面的ext/bcmath目录,然后执行/us…
使用php的常见问题是:编译php时忘记添加某扩展,后来想添加扩展,但是因为安装php后又装了一些东西如PEAR等,不想删除目录重装,别说,php还真有这样的功能. 我没有在手册中看到. 如我想增加bcmath支持,这是一个支持大整数计算的扩展.windows自带而且内置,linux“本类函数仅在 PHP 编译时配置了 --enable-bcmath 时可用”(引号内是手册中的话) 幸好有phpize, 方法是,要有与现有php完全相同的php压缩包.我用的是php-5.2.6.tar.gz.…
linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5.5.54+php5.6.30 输入下面命令: yum -y update 1.安装Apache [root@localhost ~]# yum -y install httpd # 开机自启动 [root@localhost ~]# chkconfig httpd on # 启动httpd 服务…
1.什么是库在windows平台和linux平台下都大量存在着库.本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行.由于windows和linux的本质不同,因此二者库的二进制是不兼容的.本文仅限于介绍linux下的库. 2.库的种类linux下的库有两种:静态库和共享库(动态库).二者的不同点在于代码被载入的时刻不同.静态库的代码在编译过程中已经被载入可执行程序,因此体积较大.共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小. 3.库…
一.linux下的静态库   静态库中的被调用的函数的代码会在编译时一起被复制到可执行文件中去的!!可执行文件在运行不需要静态库的存在!   二.linux下动态库的构建和使用 1.动态库的构建    gcc  -fPIC  -shared    -o  lib库名.so   源文件列表   例:    gcc   -fPIC  -shared  -o  libmylib.so  max.c  min.c   2.动态库使用    gcc    -o  最终的可执行文件  源文件列表  -L 动…
环境:LNMP in centOS 6.4. linux下PHP的扩展可以用phpize的方法,比较简单地进行启用. 以下以PHP-GD2 库安装为例子. sudo yum install php-gd2 png jpeg freetype //YUM安装扩展 cd /app/php-/ext//文件夹是我当初解压PHP安装包得到的. phpize ./configure --with-png-dir --with-freetype-dir --with-jpeg-dir --with-gdsu…
1. 背景 在java中,jvm支持类的动态链接(Class.forName(String className)),用起来也很方便.动态链接是实现IOC(Inversion of Control,控制反转,更形象的称作依赖注入)的关键,用于将类间依赖从程序移到配置文件中.在框架不重新编译的情况下,替换被依赖的类. 在linux下,C++只能通过C的dl API实现动态链接,需要先将动态链接库编译成.so,然后再调用API进行链接.下面看一下如何实现动态链接C++类.和java实现IOC一样,链接…
文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET 2002 标准版 有关本文的 Microsoft Visual Basic .NET 版本,请参阅 311321. 本文引用下面的 Microsoft .NET Framework 类库名称空间: System.Reflection   本任务的内容 摘要 分步示例 代码讨论 参考 概要 本文分步…
通过phpize为php在不重新编译php情况下安装模块memcache 1. 下载    wget http://pecl.php.net/get/memcache-2.2.4.tgz     解压  tar -zxvf memcached-2.2.4.tgz              cd memcached-2.2.4 2.进入目录 phpize    /usr/local/php/bin/phpize  3.配置 要给哪个php添加扩展  ./configure   --with-php…
phpize是php的一种构建工具,为PHP扩展准备构建环境,通过phpize可以编译php的扩展源码文件为php扩展模块. 一.安装 phpize工具可以通过安装php-dev包自动集成安装.安装完成后php的bin目录下会有phpize这个命令. 二.使用 举例:在原来编译好的php中加入memcache扩展模块,使用phpize构建的方式如下. .tgz cd memcache-/ /usr/local/php/bin/phpize ./configure –with-php-config…
[项目背景]:阿里云ECS服务器,Linux(centos7.2 64位),环境部署使用的是阿里云一键安装包(LAMP)等 [项目需求]:linux安装memcached 和php开启Memcached的扩展 [项目涉及软件包]:总共涉及4个软件包,分为服务器端:libevent(安装 Memcached 服务器所依赖的软件包,下载地址:http://libevent.org/).Memcached(Memcached 服务器软件包,下载地址:http://memcached.org/):客户端…
一.redis的安装 win版本详见: 下面是linux版本的安装步骤: step1.下载 http://redis.io/download下载完后直接make然后make install,注意sudo step2.启动服务 >cd redis安装目录/src >./redis-server //注意,这种是带默认配置启动,如果要带配置使用:>./redis-server redis-conf //启动成功后会有redis的图形出现. step3.查看服务是否启动 step4.测试 &g…
步骤:: 1.编写first_driver_hello.c文件,将其放在/linux2.6.32/drivers/char路径下: 2.在/linux2.6.32/drivers/cha/Kconfig文件中添加如下语句: 3.在/linux2.6.32/drivers/cha/Makefile文件中添加如下语句: 4.编译模块: 在控制台中进入到/linux2.6.32目录 Make  ARCH=arm  CROSS_COMPILE=arm-none-linux-gnueabi- xconfi…
库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. 一.静态库和动态库的区别 1. 静态函数库 这类库的名字一般是libxxx.a:利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了.当 然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译. 2. 动态函数库 这类库的名字一般是libxxx.so;相对于…
静态库与动态库 静态函数库 这类库的名字一般是libxxx.a,xxx为库的名字.利用静态函数库编译成的文件比较大,因为整个函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了.当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译. 动态函数库 这类库的名字一般是libxxx.M.N.so,同样的xxx为库的名字,M是库的主版本号,N是库的副版本号.当然也可以不要版本号,但名字必须有.相…
参考博文:C++静态库与动态库 >> 静态库 1. 静态库的制作 a) 编辑 name.cpp 和name.h文件 b) $g++ -c name.cpp //注意带参数-c,否则直接编译为可执行文件 c) $ar -crv libname.a name.o  //通过ar工具将目标文件打包成.a静态库文件 2静态库的使用 a) 所用程序中包含静态库的头文件 b)$g++ useStaticLibray -L ./StaticDirectory -l name //只需要在编译的时候,指定静态…
The command chkconfig is no longer available in Ubuntu.The equivalent command to chkconfig is update-rc.d.This command nearly supports all the new versions of ubuntu. The similar commands are update-rc.d <service> defaults update-rc.d <service>…
静态库 先说说我们为什么需要库? 当有些代码我们大量会在程序中使用比如(scanf,printf等)这些函数我们需要在程序中频繁使用,于是我们就把这些代码编译为库文件,在需要使用时我们直接链接即可. 定义:  程序在编译时把静态库的代码链接到可执行程序中,在代码运行时不再需要静态库.(简单理解就是把一堆 .o 文件打包到一起,当需要用到就让我们的程序链接进来) 生成及使用方法:   这里用加减乘除来举例示意: //创建所需文件 [root@localhost ku]# touch add.c a…
https://www.cnblogs.com/jianz/p/7979250.html 一.添加和root权限一样的用户 1. adduser admin passwd  admin (修改密码) 然后输入密码   (密码简单了通不过) 系统提示输入确认密码后再输入一次.OK添加成功. 2.修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示: vim /etc/sudoers ## Allow root to run any commands anywhere…
目录 静态库 定义: 生成及使用方法: 静态库的优缺点 动态库 定义: 生成及使用方法: 动态库优缺点: 静态库 先说说我们为什么需要库? 当有些代码我们大量会在程序中使用比如(scanf,printf等)这些函数我们需要在程序中频繁使用,于是我们就把这些代码编译为库文件,在需要使用时我们直接链接即可. 定义:  程序在编译时把静态库的代码链接到可执行程序中,在代码运行时不再需要静态库.(简单理解就是把一堆 .o 文件打包到一起,当需要用到就让我们的程序链接进来) 生成及使用方法:   这里用加…
场景:自己开发一个项目,程序里包含一些自定义动态库.运行,需要加载这些动态库. 假如这些库在/pro/output/lib/下面,可执行程序在/pro/output/bin/下面. 那么,我们需要: [root@linux ~]# vi /etc/ld.so.conf include ld.so.conf.d/*.conf /pro/output/lib <==这一行是新增的. 刷新动态库: [root@linux ~]# cd /pro/output/bin[root@linux ~]# ld…
项目中经常遇到多网卡的服务器,但是一个服务器的默认网关只有一个,当需要在多个网络中访问的时候(特别是在公安.交警等政府项目中),就需要添加静态路由了. 添加静态路由的方法有很多种,下面介绍2种比较常见的: 第一种:   这种方式在重启之后就失效了. echo "route add -net 172.16.100.0/24 gw 192.168.6.249" >>/etc/rc.local 使得在系统重启之后,加入这条命令. 删除路由 route del -net 172.1…
xx.o : xx.h xx.cpp -lstdc++ -o xx.o -c xx.cpp -I ./ libxx.a : xx.o ar -crv libxx.a xx.o libTest.so : loadClass.cpp loadClass.h -lstdc++ -o libTest.so loadClass.cpp -I ./ libshared.so: shared.cpp shared.h -lstdc++ -o libshared.so shared.cpp -I ./ libx…
1.创建静态链接库 2.创建动态链接库…
http://kimi.it/257.html (另外的方法)linux安装memcached及memcache扩展一.安装libevent函数库下载地址:http://libevent.org默认被安装到:/usr/local/lib目录下安装memcached之前需要先安装libevent函数库.可以通过#ls -al /usr/local/lib | grep libevent命令查看是否已安装libevent函数库.如果没安装,则需下载并安装libevent函数库. 二.安装memcac…
下载了一个免费开源的广告系统(openadserver),在Linux上安装时,提示要安装 pdo_mysql 扩展,先前有过编译安装 soap扩展 的经历,今天要编译安装 pdo_mysql 扩展,应该不难吧! 参考文献如下: PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展? 参考上述教程,在第4步骤的“运行 configure 命令”,改成如下命令即可: ./configure --with-pdo-mysql=/usr/local/mysql --with-php-con…
php扩展也需要依赖于FastDFS一些库文件,所以请先安装FastDFS,具体请看我之前的文章.   一.安装目录 php安装目录 /data/nmp/php FastDFS源码目录 /data/wwwroot/FastDFS 二.安装php扩展 1.进入php_client目录 > cd /data/wwwroot/FastDFS/php_client/ 2.运行phpize > /data/nmp/php/bin/phpize 3.configure ./configure --with…
在做公司WMS系统的时候,遇到了一个商品模块的设计问题,具体业务流程如下. 客户提供需要存放的商品清单,根据商品清单生成收货单给客户,然后生成入库单进行商品入库操作. 在生成这两个单之前首先要录入商品,而由于公司业务范围大,每个客户的货物属性有很大的不同,需要实现像电商那样的扩展属性,但也不需要太过于复杂.和电商系统不同的是,在商品入库的时候也有一些入库的扩展属性. 根据产品的要求,商品的扩展属性有可能是number,string,datetime,单选,多选 等可能的情况.扩展属性有可能是商品…
下载instantclient 以及sdk instantclient-basic-linux-x86-64-11.2.0.2.0.zip oracle-instantclient11.2-sdk-11.2.0.1.0-1.x86_64.zip 上传服务器解压后统一放置一个目录下,我放在 /usr/local/oracle_client 里. 然后 echo "/usr/local/oracle_client" > /etc/ld.so.conf.d/oracle_client.…
1.进入php源码包中,找到需要安装的扩展模块目录.cd /root/php-5.6.26/ext/mbstring 2.在扩展模块目录,运行phpize程序,(作用是检测 php 的内核版本,并为扩展生成相应的编译配置,再当前目录生成 ./configure 文件)/usr/local/bin/phpize 3.进行编译安装../configure --with-php-config=/usr/local/bin/php-configmakemake install 安装成功后提示: [roo…