1.下载FreeSwitch源码
根据需要的版本进行下载。
http://mirror.centos.org/centos/6/os/i386/Packages/
RPM of Distribution RPMForge repository for Red Hat Enterprise Linux 6
rpm包下载地址
2.编译FreeSwitch(CentOS 6.5 x32)
./configure
下面是遇到的错误
(1) No package 'libpcre' found
系统没有找到libpcre包,需要安装 pcre包
rpm -ivh pcre-devel-7.8-6.el6.i686.rpm
(2) No package 'speex' found Package
系统没有找到到speex包
rpm -ivh speex-devel-1.2-0.12.rc1.1.el6.i686.rpm
注意这个包在CentOS基本的安装ISO中没有,需要到CentOs的官网去下载
http://mirror.centos.org/centos/6/os/i386/Packages/
或者直接
yum install speex-devel
yum install libjpeg-devel
yum install sqllite
yum install sqlite-devel
yum install libcurl-devel
yum install pcre
yum install pcre-devel
yum install speex
yum install speex-devel
没有找到libldns,需要在modules.conf中注释mod_enum
yum install libedit
yum install libedit-devel
yum install openssl
yum install openssl-devel
yum install lua-devel //make lua的时候出错,需要安装lua的开发包
make的时候需要注册opus,fsv,sndfile,vpx等模块
(3) No install libldns-dev
下载和安装
ldns-1.6.16-7.el6.1.i686.rpm
ldns-devel-1.6.16-7.el6.1.i686.rpm
(4) No install libedit-dev
下载和安装
libedit-devel-2.11-4.20080712cvs.1.el6.i686.rpm
解决这几个问题后,再进行./configure 就没有问题了。
3 make all
遇到问题 install libyuv-dev to build mod_fsv
这个包是视频相关的,不使用视频功能,可以不加载此模块
cd ..
sh bootstrap.sh //初始化条件
./configure --prefix=/usr/local/freeswitch //freeswitch的输出目录
make
make install
4.启动
进入到安装目录下
$freeswitch -nc //无控制台,后台启动
注意:
在make的时候,可能由于某些需要的库没有安装,编译报错,编译报错则会中断编译行为,会导致有些关键的模块没有成功编译(例如sofia_sip模块,这样在启动freeswitch的时候,因为没有sip底层协议栈支持,就不会去监听5060的sip端口,因为没有编译log模块,而且不会有log文件输出)。
如果没有办法编译成功的库,则可以在modules.conf文件中将相关出错模块注释掉,可能会出现问题的模块包括(CentOS 6.5 x32)
applications/mod_fsv
codecs/mod_opus
languages/mod_lua
formats/mod_sndfile 这个需要装,否则没有办法播放wav文件
参考
freeswitch 1.6 centos6.5 安装记录-cu小白-ChinaUnix博客
又出现了下面的错误:
make[4]: Entering directory `/usr/local/src/freeswitch-1.6.0/src/mod/formats/mod_sndfile'
Makefile:796: *** You must install libsndfile-dev to build mod_sndfile. Stop
解决方法:
下载包libsndfile-1.0.26.tar.gz 上传到服务器
下载地址 http://www.mega-nerd.com/libsndfile/#Download
tar zxvf libsndfile-1.0.26.tar.gz
./configure
make
make install
cp /usr/local/lib/pkgconfig/sndfile.pc /usr/lib64/pkgconfig
重新执行重新执行FreeSWITCH的“./configure”,再make make inst
注释好以后,需要重新进行./configure,然后make install