安装icephp 记
下面开始安装:
一:yum 安装
首先需要添加一个yum源。
# vi /etc/yum.repos.d/zeroc-ice-amzn.repo
写入:
[zeroc-ice]name=Ice 5 for Amazon Linux $releasever - $basearch
baseurl=http://www.zeroc.com/download/Ice/5/el6/$basearchenabled=1gpgcheck=1gpgkey=http://www.zeroc.com/download/RPM-GPG-KEY-zeroc-release
官网上说可以通过
# yum list ice* db53* mcpp-devel
查看安装包列表。真正的安装命令是
# yum install -y ice* db53* mcpp-devel
安装完成可以通过命令搜索文件所在路径:
#find / -name IcePHP.so
二:源码安装
我的PHP版本是5.4.23,对应安装的Ice版本为3.5.1。
下载Ice源
# cd /opt
# wget http://www.zeroc.com/download/Ice/3.5/Ice-3.5.1.tar.gz
# wget http://www.zeroc.com/download/Ice/3.5/ThirdParty-Sources-3.5.1.tar.gz
安装依赖库
yum -y install gcc gcc-c++ expat-devel bzip2 bzip2-devel
yum -y install openssl*
1. 安装ThirdParty-Sources
# tar xvf ThirdParty-Sources-3.5.1.tar.gz
# cd ThirdParty-Sources-3.5.1
# tar xvf mcpp-2.7.2.tar.gz
# cd mcpp-2.7.2
# patch -p0 < ../mcpp/patch.mcpp.2.7.2
# ./configure CFLAGS=-fPIC --enable-mcpplib --disable-shared
# make && make install
# cd ../
2. 安装BerkeleyDB
# tar zxf db-5.3.21.NC.tar.gz
# cd db-5.3.21.NC
# patch -p0 < ../db/patch.db.5.3.21
# cd build_unix
# ../dist/configure --prefix=/usr --enable-cxx
(说明:db的默认安装prefix路径是/usr/local/BerkeleyDB.5.3,需要改为/usr,否则make Ice时会找不到路径)
# make && make install
3. 安装Ice
# cd /opt
# tar xvf Ice-3.5.1.tar.gz
# cd Ice-3.5.1/cpp
# vi config/Make.tules(默认)
根据环境修改config/Make.rules文件(我这里的安装目录是/opt目录,是ICE默认配置的目录,所以不用修改。)
# make && make install
# cd ../
#
# cd php //安装PHP扩展
# vi config/Make.rules.php
PHP_HOME ?= /usr/local/php (修改为你php安装目录)
# make && make install
源码安装完成之后,会在当前目录生成IcePHP.so文件。
找到IcePHP.so文件后,将这个文件复制到php的扩展目录,然后在php.ini添加该扩展即可。
extension=IcePHP.so
启动PHP的时候如果遇到扩展错误:
PHP Startup: Unable to load dynamic library '/usr/local/server/php/lib/php/extensions/no-debug-non-zts-20100525/IcePHP.so' - libIce.so.35: cannot open shared object file: No such file or directory in Unknown on line 0
这个是因为没加载到Ice的so文件导致的,可以使用ldd命令查看IcePHP.so。
# ldd IcePHP.so
linux-vdso.so.1 => (0x00007fff6c1ff000)
libIce.so.35 => not found
libSlice.so.35 => not found
libIceUtil.so.35 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fdc30e74000)
libm.so.6 => /lib64/libm.so.6 (0x00007fdc30bef000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fdc309d9000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fdc307bc000)
libc.so.6 => /lib64/libc.so.6 (0x00007fdc30427000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdc314a6000)
这里可以看到,libIce.so这几个文件没有查找到。
# export LD_LIBRARY_PATH=/opt/Ice-3.5.1/lib64
# ldd IcePHP.so
linux-vdso.so.1 => (0x00007fffcd5ff000)
libIce.so.35 => /opt/Ice-3.5.1/lib64/libIce.so.35 (0x00007fc9c20f6000)
libSlice.so.35 => /opt/Ice-3.5.1/lib64/libSlice.so.35 (0x00007fc9c1c76000)
libIceUtil.so.35 => /opt/Ice-3.5.1/lib64/libIceUtil.so.35 (0x00007fc9c19fd000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007fc9c16ed000)
libm.so.6 => /lib64/libm.so.6 (0x00007fc9c1468000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fc9c1252000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc9c1035000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc9c0ca0000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fc9c0a8f000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc9c088b000)
librt.so.1 => /lib64/librt.so.1 (0x00007fc9c0682000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc9c2d29000)
2014-10-28添加源码安装。
安装icephp 记的更多相关文章
- Debian - 安装随记
为什么要突然换个操作系统? 之前使用的是Lubuntu,可见硬件非常糟糕. 更糟糕的是Lubuntu被玩坏了,很多程序不能正常运行. 于是打算换Debian + XFCE. 随手记录一下遇到的一些坑, ...
- gitlab安装随记
gitlab安装 配置yum源 sudo vim /etc/yum.repos.d/gitlab-ce.repo 按照网上别人的例子,修改为清华的源 [gitlab-ce] name=Gitlab C ...
- Centos 7 mysql 安装使用记
某次把美团云1G 1核 centos 7 装到死机,明白了源码编译安装mysql是个大坑,遂绕路到其他大道. 安装命令 wget http://dev.mysql.com/get/mysql-comm ...
- 安装LMS记
LMS学习管理系统,即英文Learning Management System的缩写.中文常用别名:在线学习系统. 尝试安装一款LMS,并进行二次开发. Moodle 首先想到的是Moodle.Moo ...
- CentOS上oracle 11g R2数据库安装折腾记
1.虚拟机上centos镜像的获取.这里推荐网易镜像站中的CentOS7版本(其他开源镜像站亦可).这里给出链接: http://mirrors.163.com/centos/7.3.1611/iso ...
- mac上安装brew----笔记
一.mac 终端下,执行以下命令,即可安装brew: 介绍brew:是Mac下的一款包管理工具brew [brew install 软件],类似与centos里面的 yum[yum install 软 ...
- VMware系统运维(五)安装SSO vCenter Single Sign-On
1.前面我们做了很多准备工作,安装了很多需求部件,这时候再安装,必备条件无,这是简单安装,即自动安装,点击"安装". 2.简单安装,提示内存不足,需要4GB以上,加内存,重新安装. ...
- C# Windows服务安装出现System.Security.SecurityException异常解决办法
我把注册windows服务所用的安装及启用服务命令写到了bat可执行文件(名称为install.bat)中,如下所示: %SystemRoot%\Microsoft.NET\Framework\v4. ...
- CentOS7.3利用kubeadm安装kubernetes1.7.3完整版(官方文档填坑篇)
安装前记: 近来容器对企业来说已经不是什么陌生的概念,Kubernetes作为Google开源的容器运行平台,受到了大家的热捧.搭建一套完整的kubernetes平台,也成为试用这套平台必须迈过的坎儿 ...
随机推荐
- 【bzoj4921】[Lydsy六月月赛]互质序列 暴力
题目描述 给出一个序列,要求删除一段非空区间,使得剩下的数的个数大于等于2.求所有删除方式剩下的数的最大公约数的和. 输入 第一行包含一个正整数n(3<=n<=100000),表示序列的长 ...
- 前端基础:HTML标签(下)
前端基础HTML标签(下) 1.表单 表单的功能主要用于向服务器传输数据,从而实现客户端与Web服务器的交互.表单能够包含input系列标签,比如:文本字段.复选框.单选按钮.提交按钮等:表单还包含t ...
- 【题解】HNOI2016序列
也想了有半天,没有做出来……实际上做法确实也是十分精妙的.这里推荐一个blog,个人认为这位博主讲得挺好了:Sengxian's Blog; 感觉启示是:首先要加强对莫队算法 & ST表的熟练 ...
- YBT 5.2 树形动态规划
题解在代码中 二叉苹果树[loj 10153] /* 若要留q条边便是要留q+1个点 所以记忆化搜索 dp[pos][ans]=max(dp[pos][ans],dp[l[pos]][k]+dp[r[ ...
- contOS镜像快速加载到本地虚拟机软件
无需任何配置,只要两步: 1.首先打开 虚拟机软件VMware 2.然后打开镜像目录,找到后缀名为 .vmx 的文件,双击,即可. 会自动 挂载好,如下图:
- VS 2013 with update安装失败(kb2829760)解决方案
update过程中遇到kb2829760补丁无法更新而导致vs安装失败的解决方法: 1.安装KB2829760: 2.安装KB2829760中文语言包: 3.安装VS2013 with update. ...
- ACE线程管理机制-并发控制(2)
转载于:http://www.cnblogs.com/TianFang/archive/2006/12/04/581793.html ACE Guard类属 与C一级的互斥体API相比较,Mutex包 ...
- 关于string::size_type
size_type其实是string模板类定义的一种类型之一,它与size_of的用法相似,只是它根据存储的类型返回字符串的长度.对于 string具体化,将根据char返回字符串的长度,在这种情况下 ...
- Codeforces Round #344 (Div. 2) A
A. Interview time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- HDU4612:Warm up(缩点+树的直径)
Warm up Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Su ...