ubuntu 22.04安装FreeSwitch,使用内置mysql连接

文章目录

  • 前言
  • 一、准备工作
    • 1.更新ubuntu
    • 2.安装FreeSwitch依赖库
    • 3.安装Gcc 10
  • 二、编译安装
    • 1. 编译安装Spandsp和Sofia-sip
    • 2. 编译安装libks和signalwire
    • 3. 编译安装FreeSwitch
  • 总结


前言

  以前一直在CentOS 7.6上做FreeSwitch的开发,目前想转到ubuntu 22.04上面,有两个原因,第一是centos停止维护了,第二个原因是FreeSwitch1.10的内置mysql连接在centos上面安装还是比较麻烦(这个如果大家有兴趣,我会专门再写一篇)。网上在ubuntu 22.04上安装FreeSwitch的教程比较少,因此写出来供大家参考。敲字不易,转载请注明出处。


一、准备工作

  1. 更新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的基本配置。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值