
ubuntu 22.04安装FreeSwitch,使用内置mysql连接
以前一直在CentOS 7.6上做FreeSwitch的开发,目前想转到ubuntu 22.04上面,有两个原因,第一是centos停止维护了,第二个原因是FreeSwitch1.10的内置mysql连接在centos上面安装还是比较麻烦(这个如果大家有兴趣,我会专门再写一篇)。网上在ubuntu 22.04上安装FreeSwitch的教程比较少,因此写出来供大家参考。敲字不易,转载请注明出处,本
文章目录
前言
以前一直在CentOS 7.6上做FreeSwitch的开发,目前想转到ubuntu 22.04上面,有两个原因,第一是centos停止维护了,第二个原因是FreeSwitch1.10的内置mysql连接在centos上面安装还是比较麻烦(这个如果大家有兴趣,我会专门再写一篇)。网上在ubuntu 22.04上安装FreeSwitch的教程比较少,因此写出来供大家参考。敲字不易,转载请注明出处。
一、准备工作
- 更新ubuntu,
sudo apt update -y
suso apt upgrade -y
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata
2. 安装FreeSwitch依赖库,
sudo apt install unixodbc-dev curl wget git subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev libtool libtool-bin libsqlite3-dev libpcre3-dev libspeexdsp-dev libldns-dev libedit-dev yasm liblua5.2-dev libopus-dev cmake libtiff-dev libcodec2-dev libcodec2-dev portaudio19-dev libmagickcore-dev libmp3lame-dev libmpg123-dev libshout3-dev libvlc-dev libpq-dev libmariadb-dev libldap2-dev erlang librabbitmq-dev libsmpp34-dev libyaml-dev libmongoc-dev libopencv-dev libmemcached-dev libavformat-dev libh2o-dev libsoundtouch-dev libhiredis-dev libopus-dev autoconf automake devscripts gawk gettext libcurl4-openssl-dev libdb-dev libedit-dev libgdbm-dev libldns-dev libncurses5-dev libopus-dev libopus-ocaml libpcre3-dev libperl-dev libpq-dev libspeex-dev libspeexdsp-dev libssl-dev libtiff5-dev libtool libtool-bin libvorbis0a libogg0 libsqlite3-dev libogg-dev libvorbis-dev portaudio19-dev libshout3-dev libmpg123-dev libmp3lame-dev yasm libbsd-dev flite flite1-dev libflite1 liblua5.2-0 liblua5.2-dev lua5.2 luarocks libsndfile-dev -y
3. 安装Gcc 10, 系统默认版本过高,编译可能会出问题,
sudo rm -rf /usr/bin/gcc
sudo rm -rf /usr/bin/g++
sudo apt install gcc-10 g++-10 cpp-10 -y
sudo ln -s /usr/bin/gcc-10 /usr/bin/gcc
sudo ln -s /usr/bin/g++-10 /usr/bin/g++
二、编译安装
所有源码我们选择放在/opt目录下,选择放在其它目录也可以。
1. 编译安装Spandsp和Sofia-sip,这两个库是需要单独安装的,
cd /opt
sudo git clone https://github.com/freeswitch/spandsp /opt/spandsp
cd /opt/spandsp
sudo ./bootstrap.sh
sudo ./configure
sudo make
sudo make install
cd /opt
sudo git clone https://github.com/freeswitch/sofia-sip.git /opt/sofia-sip
cd /opt/sofia-sip
sudo ./bootstrap.sh
sudo ./configure
sudo make
sudo make install
sudo /sbin/ldconfig -v
2. 编译安装libks和signalwire
cd /opt
sudo git clone https://github.com/signalwire/libks.git
cd libks
sudo cmake .
sudo make
sudo make install
cd /opt
git clone https://github.com/signalwire/signalwire-c.git
cd signalwire-c
sudo cmake .
sudo make
sudo make install
3. 编译安装FreeSwitch,
cd /opt
sudo git clone https://github.com/signalwire/freeswitch.git -b v1.10
cd /opt/freeswitch
sudo ./bootstrap.sh -j
sudo CFLAGS=-Wno-error ./configure --prefix=/usr/local/freeswitch --enable-core-odbc-support --enable-zrtp
这时可以选在内置mysql的连接,修改/opt/freeswitch/modules.conf
将mod_pgsql注释掉,打开mod_mariadb
#databases/mod_pgsql
databases/mod_mariadb
然后开始编译和安装,
sudo make
sudo make install
建立符号连接,
sudo ln -s /usr/local/freeswitch/bin/freeswitch /usr/bin/freeswitch
sudo ln -s /usr/local/freeswitch/bin/fs_cli /usr/bin/fs_cli
启动,
sudo freeswitch -nc
启动FreeSwitch客户端,
fs_cli
总结
本文详细描述了Freeswitch在ubuntu 22.04上的安装过程,按文中步骤应该能顺利安装完成,有任何问题欢迎探讨,下一篇文章将会讲解FreeSwitch的基本配置。
更多推荐
所有评论(0)