Centos7 下安装freeswitch 1.8.5
1、前期准备
yum install net-tools
关闭防火墙
//临时关闭
systemctl stop firewalld
//禁止开机启动
systemctl disable firewalld
setenforce 0
2、centos 7 安装依赖包
yum install -y http://files.freeswitch.org/freeswitch-release-1-6.noarch.rpm epel-release
yum install -y git alsa-lib-devel autoconf automake bison broadvoice-devel bzip2 curl-devel libdb4-devel e2fsprogs-devel erlang flite-devel g722_1-devel gcc-c++ gdbm-devel gnutls-devel ilbc2-devel ldns-devel libcodec2-devel libcurl-devel libedit-devel libidn-devel libjpeg-devel libmemcached-devel libogg-devel libsilk-devel libsndfile-devel libtheora-devel libtiff-devel libtool libuuid-devel libvorbis-devel libxml2-devel lua-devel lzo-devel mongo-c-driver-devel ncurses-devel net-snmp-devel openssl-devel opus-devel pcre-devel perl perl-ExtUtils-Embed pkgconfig portaudio-devel postgresql-devel python-devel python-devel soundtouch-devel speex-devel sqlite-devel unbound-devel unixODBC-devel wget which yasm zlib-devel libshout-devel libmpg123-devel lame-devel
3、编译freeswitch 1.8.5
freeswitch下载地址:http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.bz2
wget http://files.freeswitch.org/freeswitch-releases/freeswitch-1.8.5.tar.bz2
tar xvjf freeswitch-1.8.5.tar.bz2
cd freeswitch-1.8.5
./configure -C —enable-core-odbc-support #如果读者不想使用mysql管理,只需要执行./configure即可
make
make install
3.1 make中间出现的错误:(或者将模块中的mod_signalwire注释掉)
making all mod_signalwire
make[4]: Entering directory /usr/local/src/freeswitch/src/mod/applications/mod_signalwire’ Makefile:916: *** You must install libks to build mod_signalwire. Stop. make[4]: Leaving directory/usr/local/src/freeswitch/src/mod/applications/mod_signalwire’
make[3]: * [mod_signalwire-all] Error 1
可以将这个模块在modules.conf中注释掉或者直接安装这个模块所需即可。
根据报错可以看出需要安装需要安装 libks 和 signalwire-c,安装libks前需要先安装cmake。
yum install libatomic.x86_64 #libks还会提示少libatomic,有的不会提示,为了保证顺利安装,建议yum安装一下
cd /usr/local/src
wget https://cmake.org/files/v3.13/cmake-3.13.3.tar.gz
tar -zxvf cmake-3.13.3.tar.gz
cd cmake-3.13.3
./bootstrap
gmake
make install
安装 libks
cd /usr/local/src
git clone https://github.com/signalwire/libks.git
cd libks
cmake .
make
make install
cp /usr/lib/pkgconfig/libks.pc /usr/lib64/pkgconfig/ #这个比较坑爹,不然还是还找不到libks模块
安装signalwire-c
cd /usr/local/src
git clone https://github.com/signalwire/signalwire-c.git
cd signalwire-c
cmake .
make
make install
cp /usr/local/lib/pkgconfig/.pc /usr/lib64/pkgconfig/
cp -f /usr/local/lib/ /usr/lib64/
4、重新编译安装freeswitch:
cd /usr/local/freeswitch
./bootstrap.sh -j
./configure —enable-core-odbc-support #如果读者不想使用mysql管理,只需要执行./configure即可
make
make install