OpenIMSCore服务器安装配置过程
更新时间:2023-10-23 13:54:01 阅读量: 综合文库 文档下载
OpenIMSCore安装配置过程,思路,可能遇到的问题及其解决办法 袁星勇
E-MAIL:yuan-xy@hotmail.com
ChongQing JinMei Communication Co.,Ltd 2008-10-23
代码资源来源:OpenIMSCore: http://www.openimscore.org.
文档来源:OpenIMSCore Installation Guide――http://www.openimscore.org. 参考资料:基于开放源代码实现的IMS原型化系统-张懿-重庆大学硕士论文
1. 运行环境之编译环境的安装及配置
OpenIMSCore是基于Linux环境开发的,所以要编译OpenIMSCore源代码首先需要在Linux操作系统安装编译及运行环境。在《基于开放源代码实现的IMS原型化系统》论文中可以找到OpenIMSCore运行环境要求:
a) GCC 3/4; b) JDK1.5以上; c) ant;
d) 已安装并启动MySQL数据库管理系统;
e) libxml2,libmysqlclient库软件包及开发包头文件; f) flex和bison; g) Linux Kernel 2.6
h) 已安装并启动bind域名服务器; 注:Fedora8或者CentOS5(RHEL5)操作系统DVD光盘中有自带的MySQL,bind等rpm安装包,而在Ubuntu的CD光盘上是没有mysql,bind,flex,bison,gcc等安装包的,所以我选择了Fedora和CentOS的安装方式。在安装Fedora/CentOS时在定制时(安装过程基本相似),我安装了mysql,bind,gcc,安装完成后只需要在安装ant和jdk就可以完成以上的运行环境要求,所以首次安装推荐使用Fedora/CentOS,本文也只介绍了Fedora/CentOS下的安装过程。如果采用Ubuntu以上所有的都需要自己手动下载安装包安装或者在线更新,需要的步骤会更多,在本文中就不再描述。
在www.openimscore.org上下载了源代码以后就可以发现OpenIMSCore源代码分为两个部分,ser_ims和FHoSS,其中ser_ims是用C语言开发的,而FHoSS是用Java开发的。ser_ims部分主要完成的IMS中的cscfs功能实体,FHoSS完成IMS中HSS功能实体。所以首先需要在Linux操作系统中安装GCC编译器及jdk编译器。
a) GCC
在Linux终端shell命令行中输入命令#gcc --version如果显示gcc版本信息则基本可以确认gcc是已经安装了的,如果在编译程序时出现error C compiler cannot create executables的错误,是gcc库安装不完整造成的,需要安装glibc,及libc6-dev。
如果采用fedora8或者centos5(RHEL5),在安装配置时可以配置是否安装GCC,如果没有安装你需要找到光盘中的gcc有关的rpm包手动安装,它
在终端输入java –version命令后会显示已经安装的jdk信息,输入ant –h会显示ant相关信息,如果没有,仔细检查上面三个脚本中的几个路径是否对应是你的jdk和ant的安装路径,也可能是jdk-6u7-linux-i586.bin或 apache-ant-1.7.1-bin.tar.gz没有正确的安装。
2. 编译程序
在/opt/目下新建一个OpenIMSCore文件夹,然后将下载下的源代码复制到/opt/OpenIMSCore下,如果采用ftp下载的代码,只需要将ser_ims2008909.r0583.tgz和FHoSS2008909.r0583.tgz解压缩到OpenIMSCore即可。
可能会依赖很多安装包,过程会比较繁琐。 b) jdk
我采用的是jdk-6u7-linux-i586.bin及apache-ant-1.7.1-bin.tar.gz,在/usr下新建一个文件夹java,将jdk-6u7-linux-i586.bin复制到/usr/java下然后在终端键入命令#./jdk-6u7-linux-i586.bin运行这个文件,按照提示信息安装jdk。
将apache-ant-1.7.1-bin.tar.gz解压缩到/usr/local目录下,然后将在/usr/local下新产生的apache-ant-1.7.1文件夹更名为ant。
#tar –zxvf apache-ant-1.7.1-bin.tar.gz –C /usr/local/ #mv /usr/local/apache-ant-1.7.1 /usr/local/ant
完成以上两步后设置编译程序需要的环境变量JAVA_HOME 编辑/etc/profile文件,在文件末尾中增加以下几行:
#set java environment
export JAVA_HOME=/usr/java/jdk1.6.0_07 export PATH=/usr/java/jdk1.6.0_07:$PATH export CLASSPATH=/usr/java/jdk1.6.0_07/lib #end
在/etc/profile.d/文件夹下新建两个文档:java.sh,ant.sh。 在java.sh中增加以下3行
export JAVA_HOME=/usr/java/jdk1.6.0_07 export PATH=/usr/java/jdk1.6.0_07/bin:$PATH export
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
在ant.sh中增加下面2行
export ANT_HOME=/usr/local/ant
export PATH=$PATH:$ANT_HOME/bin
然后分别执行这个文件: # source /etc/profile
# source /etc/profile.d/java.sh # source /etc/profile.d/ant.sh
注:#前缀表示需要root权限才能运行。
如果是用SVN,将ser_ims和FHoSS都checkout在/opt/OpenIMSCore目录下即可。
a) 进入ser_ims文件件编译
#cd /opt/OpenIMSCore/ser_ims #make install-libs all
如果只需要编译其中的一部分,或者只编译IMSCore不需要其他模块,可详细阅读在ser_ims文件夹下的INSTALL文件。
如果在编译时出错:
1) 检查编译器是否安装正确 2) 源代码是否完整
3) 如果提示在文件dbase.c有错误,如找不到
struct my_con等。 解决思路:
找到ser_ims/modules/mysql/下的dbase.c文件下可以找到#include
b) 进入FHoSS文件夹编译HSS
#ant compile deploy
如果需要了解更多信息,阅读在FHoSS目录下install.txt文件 如果编译出错一般是JAVA_HOME设置不正确造成的。
3. 运行环境之mysql
如果不是采用的默认安装mysql(rpm包安装方式和默认安装是一致的),请参考mysql官方相关文档,安装完成后,相应的导入到数据库中即可。
终端中输入命令:
#chkconfig --level 5 mysql on #service mysqld start
在终端shell命令行中输入mysql即可进入mysql环境,使用show databases;命令即可查看默认的mysql数据库,使用exit可返回到终端shell命令行。
如果输入mysql提示command not found则表示数据库没有正常启动,可能出现的的错误原因: a) mysql服务没有启动
可在shell命令行输入chkconfig --list | grep mysqld查看mysqld服务进程是否启动。
如果没有启动,输入命令service mysqld start即可启动mysql。 b) mysql没有安装。(mysql在linux下的安装步骤网上教程比较多。)
如果mysql正常工作,将OpenIMSCore需要的三张表导入到数据库中, mysql -u root -p -h localhost
mysql -u root -p -h localhost
在mysql环境中输入show databases;(注意命令有个分号结尾)可以看到已经多了两个数据库hss_db(注意是hss_db,icscf。
4. 运行环境之DNS服务器
如果有独立的可控的DNS服务器,则域名解析部分可方在专门的DNS服务器上,在这里我们是准备在局域网中搭建IMS试验场,所以需要安装DNS服务器来做域名解析,并将DNS服务器和IMS服务器做在同一台PC中。下面就介绍在Fedora 8 和CentOS下利用bind实现IMS服务器需要的DNS解析(详情请参考Bind9相关的官方文档)。
由于是在同一台PC上实现,所以DNS服务器地址应该指向自己,所以在/etc/resolv.conf中应增加一行:nameserver 127.0.0.1
可通过命令chkconfig --list|grep named查看是否安装了DNS Serve。 如果已经安装通过命令service named start则可启动DNS Server。 如果没有安装则需要在安装包中(或下载)找到bind相应的安装包和它依赖的相关包,bind安装相关的文章在网上也很多。最简便的办法就是在安装Linux操作系统定制时就选上DNS服务器,直接就可以使用。 安装完成后修改/etc/name.conf文件。
在CentOS5中默认好像是没有这个文件,需要执行命令 #cp –p /etc/named.caching-nameserver.conf named.conf
用named.caching-nameserver.conf(这个文件需要安装另外一个dns的caching-nameserver-xxx.rpm安装包才会产生)模板生成一个named.conf文件
。修改后的文件为(红色为修改部分) CentOS下的named.conf文件: options {
listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory \
dump-file \
statistics-file \
memstatistics-file \ query-source port 53; query-source-v6 port 53; allow-query { any; };
};
logging {
channel default_debug {
file \ severity dynamic; }; };
view localhost_resolver {
match-clients { any; }; match-destinations { any; }; recursion yes;
include \};
如果是Fedora8 named.conf修改后为下面的结果:
options {
listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory \
dump-file \
statistics-file \
memstatistics-file \ allow-query { any; }; };
logging {
channel default_debug {
file \ severity dynamic; }; };
zone “.” IN { type hint;
file “named.ca”; };
include “etc/named.rfc1912.zones”;
修改完named.conf后无论是在fedora8还是CentOS下均需要编辑/etc/named.rfc1912.zones文件,在文件中增加一个zone: zone “open-ims.test” IN{
type master;
file “open-ims.dnszone”; notify no;
安装方式-源代码编译安装方式
需要安装的支持库Libosip,libexosip,gtk2.0,libxml2,libcurl3,gstreamer相关,libvlc0,vlc,这个过程就不在详细描述。安装以上的库文件后,就可以将UCTIMSClient的源代码包 uctimsclient1.0.12.tar.gz解压缩,进入目录后直接make就可以编译。编译后用命令./uctimsclient就可以启动软终端。
ii. Ubuntu下deb安装方式
上面所列出的开发库在ubuntu linux下都有deb的安装包,安装完所有deb包及其相互依赖的包(约80~100个)(在ubuntu中文网均可找到)后,(安装deb包的命令为sudo dpkg –i xxxx.deb),再安装uctimsclient1.0.12.deb即可。
安装成功后在命令行输入sudo /usr/bin/uctimsclient即可运行软终端。
注:下载deb安装包时注意应该与相应的操作系统对应,feisty对应ubuntu7.04,gusty对应ubuntu7.10,hardy对应ubuntu8.04。
i.
正在阅读:
OpenIMSCore服务器安装配置过程10-23
论语十六则原文翻译及背景03-26
【粤教版】九年级化学下册:9.2《化学与穿戴》教学素材05-25
2017年华南农业大学之机械设计考研导师圈点必考题汇编05-09
2018年五邑大学专插本招生简章03-08
利用对角线法则计算下列三阶行列式11-22
职称评定申请书03-31
保险公司流程再造实验 - 图文01-05
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- OpenIMSCore
- 配置
- 过程
- 安装
- 服务器
- 《基督徒生活手册》加尔文-第一章 谦卑顺服
- 便携式三坐标
- 中职英语Unit 7 I feel Sicke(real life skills)教案
- 汽车英语试卷 C答案
- 车洞河中桥施工专项方案
- 安徽省庐江县关于印发《庐江县被征地农民养老保险暂行办法》的通知(庐政〔2008〕56号,2008年5月27日)
- 安全生产标准化作业指导书(正式版)
- 满意度调研问卷(小学生)
- 土壤学试题题 - 图文
- 汉语教师志愿者面试综合试题
- 八一建军节演讲稿范文三篇-精选模板
- 2019顺义二模试题及参考答案
- 同济桥梁总复习
- 计算机网络基础知识
- 电子设计实验报告 - 图文
- 江西理工大学java考试题型
- 脚手架专项施工方案(专家论证)
- 宏站-考试试题-答案
- 首届“大理青年创业州长奖”获奖人选名单(10人)
- 基于WEB的图书管理系统的设计与实现