具体OpenIMSCore的安装步骤已经有很多人写了
参考http://www.vpsee.com/2009/07/install-configure-openimscore/
原文如下(有剪切):
- 下面是安装在 Ubuntu 9.04 Desktop 版本上的过程,Ubuntu 的其他版本也应该可以。为了减少痛苦,建议在 Ubuntu 上安装 OpenIMSCore,配置文件/文档什么的都是为 Ubuntu 写的。八卦一下,UCT 是 Ubuntu 的铁杆粉丝,Ubuntu 的创始人就毕业于 UCT。
- 下载和安装
- 在官方网站下载 source code,我本来懒得安装配置,想下载一个 vmware image 版本直接运行,结果 image 太大,下载老出错。刚好我们组在 UCT 有个 workshop,所以路过就找 UCT 的人要了个 hard copy,不过是 source code 的,他们自己都不用那个 image 版本,软件开发行业有句话叫做:“eat your own dog food”,既然他们都不 eat,那我也不 eat 他们的了:)
- mkdir /opt/OpenIMSCore
- cd /opt/OpenIMSCore
- mkdir ser_ims
- svn checkout http://svn.berlios.de/svnroot/repos/openimscore/
- ser_ims/trunk ser_ims
- mkdir FHoSS
- svn checkout http://svn.berlios.de/svnroot/repos/openimscore/
- FHoSS/trunk FHoSS
- 安装必要的软件包
- sudo apt-get install bison flex libxml2 libxml2-dev bind9
- sudo apt-get install mysql-server libmysqlclient15-dev
- sudo apt-get install sun-java5-jdk ant
- 编译
- cd /opt/OpenIMSCore
- cd FHoSS
- ant compile deploy
- cd ..
- cd ser_ims
- make install-libs all
- cd ..
- 配置 DNS
- 拷贝 DNS 配置文件,编辑 named.conf.local:
- sudo cp /opt/OpenIMSCore/ser_ims/cfg/open-ims.dnszone /etc/bind/
- vi /etc/bind/named.conf.local
- zone “open-ims.test” {
- type master;
- file “/etc/bind/open-ims.dnszone”;
- };
- 重启 DNS 服务,然后用 ping 测试:
- sudo /etc/init.d/bind9 restart
- ping open-ims.test
- PING open-ims.test (127.0.0.1) 56(84) bytes of data.
- 64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.020 ms
- 64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.027 ms
- ...
- 配置 OpenIMSCore
- cd /opt/OpenIMSCore
- mysql -u root -p < FHoSS/scripts/hss_db.sql
- mysql -u root -p < FHoSS/scripts/userdata.sql
- mysql -u root -p < ser_ims/cfg/icscf.sql
- cp ser_ims/cfg/*.cfg .
- cp ser_ims/cfg/*.xml .
- cp ser_ims/cfg/*.sh .
- 运行 OpenIMS Core
- /opt/OpenIMSCore/pcscf.sh
- /opt/OpenIMSCore/icscf.sh
- /opt/OpenIMSCore/scscf.sh
- /opt/OpenIMSCore/FHoSS/deploy/startup.sh
- 如果在启动 startup.sh 时遇到:startup.sh: line 15: /bin/java: No such file or directory 说明 JAVA_HOME 没有设置好,首先定位 java 装在哪里,然后修改 .bashrc 设置环境变量,把 java 的路径加到 JAVA_HOME。
- locate /rt.jar
- cd
- vi .bashrc
- export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
- source .bashrc
- 重新启动 startup.sh,打开浏览器输入 http://localhost:8080, 用户名/密码是:hss/hss。 登录后会报错,原因是要用 root 启动 Tomcat,FHoSS 运行在 Tomcat 上:
- sudo ./startup.sh
- 如果这个时候提示找不到 /bin/java,需要做个连接:
- sudo ln -s /usr/bin/java /bin/java
- 再次启动 startup.sh,用浏览器登录 http://localhost:8080 后就可以看到欢迎界面了。
- 用 uctimsclient 测试
- 到 http://uctimsclient.berlios.de/ 下载 OpenIMS Core 的客户端 uctimsclient,先安装必要软件包,然后安装 uctimsclient:
- sudo apt-get install libavcodec52 libosip2-dev libexosip2-dev
- sudo apt-get install libgtk2.0-dev libxml2-dev libcurl4-dev libvlc-dev vlc
- sudo apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
- sudo apt-get install libavcodec-unstripped-52
- sudo dpkg -i uctimsclient1.0.13.deb
- dpkg -i uctimsclient1.0.13.deb 时会报错,这里有几个 dependency 问题需要解决:需要 libavcodec51 而不是上面最新的 libavcodec52,所以要把 libavcodec52 删除,手动下载和安装 libavcodec51;需要 libavcodec-unstripped-51 而不是 libavcodec-unstripped-52,手动下载 libavcodec-unstripped-51,安装 libavcodec-unstripped-51 前需要先安装 libx264-59。
- 运行 uctimsclient,如果这个时候报错,则需要安装 libcurl 后再次运行:
- uctimsclient: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory
- apt-get install libcurl3
- uctimsclient
我这里只说下,我遇上的问题
1.java5,他说是需要安装java5,但是我发现,安装后,在compile的时候会报错,再去网上看了些Ubuntu 8.04安装OpenIMSCore的文章,发现他们都用的java6,遂换之.继而,发现双终端操作,一方更改.bashrc后,另一边不能同步...开始的时候没有想到是这个问题,困扰了很久
2.DNS配置的问题,全部按照步骤来做,可惜,不行.后来发现是需要改DHCP的设置,步骤如下:
(1).执行ser_ims/cfg/configurator.sh,在domain中输入open-ims.test,IP Adress中输入127.0.0.1
(2).#cp /etc/resolv.conf /etc/resolvBAK.conf
#gedit /etc/resolv.conf 写入如下信息
nameserver 127.0.0.1
search open-ims.test
domain open-ims.test
#/etc/init.d/bind9 restart
#ping open-ims.test
(3).搞定...
3.运行,CTRL+SHIFT+T在多个终端中分别运行,startup.sh需要先cd到.../deploy/目录再运行
4.uctimsclient安装也遇到很多问题啊...其所依赖的软件包很多都很老,换了很多个更新源都下不到,最后只有dpkg -i -force-all ...
然后运行的时候找到提示,用新版的lib文件创建共享链接,然后搞定.
5.现在只能本机使用...如何能够局域网内使用呢?另外只能通过数据库管理,如果来建立拨号规则之类的东西呢?这可真是难题了...