Centos7安装freeswitch-1.10.8(2023)

1.安装FreeSwitch

        在Centos7安装FreeSwitch遇到了很多依赖包的坑,在此记录一下完整的安装过程。亲测有效,顺利安装上。花费了我一下午的试错时间,觉得有用的点个赞呗~

2.安装过程

#安装基本依赖包
yum update -y
yum install -y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release
yum update -y
yum install -y yum-plugin-ovl centos-release-scl rpmdevtools yum-utils git
yum install -y devtoolset-4-gcc* sqlite-devel libcurl-devel pcre pcre-devel speex speex-devel ldns-devel yasm libopus-devel opus-devel
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

#安装cmake
wget https://cmake.org/files/v3.14/cmake-3.14.0.tar.gz
tar vzxf cmake-3.14.0.tar.gz
cd cmake-3.14.0
./configure
make
make install

#安装依赖 libatomic
yum install -y libatomic
git clone https://github.com/signalwire/libks.git
cd libks
cmake .
make
make install

#安装依赖 signalwire-c
git clone https://github.com/signalwire/signalwire-c.git
cd signalwire-c/
cmake .
make
make install
ln -sf /usr/local/lib64/pkgconfig/signalwire_client.pc /usr/lib64/pkgconfig/signalwire_client.pc

#安装依赖 nasm
wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz
tar -zxvf nasm-2.13.03.tar.gz
cd nasm-2.13.03
./configure
make && make install


#安装依赖 x264
git clone http://git.videolan.org/git/x264.git
cd x264
./configure
make
make install

#安装依赖
wget http://download1.rpmfusion.org/free/el/updates/7/x86_64/x/x264-libs-0.148-24.20170521gitaaa9aa8.el7.x86_64.rpm
wget http://download1.rpmfusion.org/free/el/updates/7/x86_64/x/x264-devel-0.148-24.20170521gitaaa9aa8.el7.x86_64.rpm
rpm -hiv x264-libs-0.148-24.20170521gitaaa9aa8.el7.x86_64.rpm
rpm -hiv x264-devel-0.148-24.20170521gitaaa9aa8.el7.x86_64.rpm
cd /usr/local/src
wget https://github.com/libav/libav/archive/refs/tags/v12.3.zip
unzip v12.3.zip
cd libav-12.3
./configure
make                                                                                  
make install
cp /usr/local/lib/pkgconfig/libavcodec.pc    /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libavdevice.pc   /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libavfilter.pc   /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libavformat.pc   /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libavresample.pc /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libavutil.pc     /usr/lib64/pkgconfig/
cp /usr/local/lib/pkgconfig/libswscale.pc    /usr/lib64/pkgconfig/
ldconfig

#安装依赖 sofia-sip
git clone https://github.com/freeswitch/sofia-sip
cd sofia-sip
sh autogen.sh
./configure
make && make install

#安装依赖 spandsp
git clone https://github.com/freeswitch/spandsp
cd spandsp
sh autogen.sh
./configure
make && make install

#安装依赖
vim /etc/yum.repos.d/linuxtech.repo
<<<
[linuxtech]
name=LinuxTECH
baseurl=http://pkgrepo.linuxtech.net/el6/release/
enabled=1
gpgcheck=1
gpgkey=http://pkgrepo.linuxtech.net/el6/release/RPM-GPG-KEY-LinuxTECH.NET
>>>
yum install -y libopus-devel
wget https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz
tar xvfz opus-1.3.1.tar.gz
cd opus-1.3.1
./configure
make
make install

#安装freeswitch 1.10.8版本
wget https://files.freeswitch.org/releases/freeswitch/freeswitch-1.10.8.-release.tar.gz
cd freeswitch-1.10.8.-release
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
make clean
./configure

#安装声音文件
make sounds-install
make moh-install
make cd-sounds-install
make cd-moh-install

#安装freeswitch
make
make install

#检验是否安装成功

vim /etc/profile
追加内容:
export PATH=/usr/local/freeswitch/bin/:$PATH

source /etc/profile

which freeswitch  #存在该二进制即可

查看freeswitch的默认安装目录: /usr/local/freeswitch/



安装成功截图:

### 安装 FreeSWITCH 1.6 的准备工作 为了确保顺利安装 FreeSWITCH 1.6,在 CentOS 7 上需先准备必要的工具和依赖项。由于 `ifconfig` 命令对于网络配置非常重要,可以通过执行 `yum install net-tools` 来安装该命令[^1]。 ### 安装所需的依赖包 在开始编译之前,需要确保系统已经安装了所有必需的开发库和支持软件。这些依赖关系通常包括但不限于 GCC 编译器套件、自动构建工具以及一些特定于 FreeSWITCH 的库。具体操作可以参照其他成功案例中的说明来完成依赖项的安装[^2]。 ### 配置并编译源码 考虑到不同版本间的兼容性问题,特别是针对 CentOS 6 用户遇到过的多种错误情况,强烈推荐仅在 CentOS 7 或更新的操作系统环境中进行此过程。为了避免可能存在的编译或运行时错误,建议严格按照官方文档或其他可靠资源指导下的步骤来进行设置工作[^3]。 另外需要注意的是,在某些情况下移除特定模块(如 mod_opus)可能会帮助解决潜在冲突或简化整个流程[^4]。 ```bash # 更新现有软件包列表 sudo yum update -y # 安装基本开发工具和其他必要组件 sudo yum groupinstall "Development Tools" -y sudo yum install epel-release -y sudo yum install autoconf automake libtool curl openssl-devel ncurses-devel sqlite-devel bzip2-devel pkgconfig git wget tar gzip make gcc-c++ pcre-devel zlib-devel uuid-devel speexdsp-devel opus-devel sox-devel lua-devel python-devel perl-devel tcl-devel jansson-devel yaml-cpp-devel jsoncpp-devel gsm-devel spandsp-devel resample-devel srtp-devel pjproject-devel -y # 获取 FreeSWITCH 源代码 (假设为稳定版分支) cd /usr/src/ git clone --branch v1.6 https://github.com/FreeSWITCH/FreeSWITCH.git freeswitch-1.6 # 进入解压后的目录并清理不需要的部分 cd freeswitch-1.6 rm -rf src/mod/codecs/mod_opus/ # 开始配置与编译 ./bootstrap.sh -j$(nproc) # 如果一切正常,则继续安装 sudo make install ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Rocky

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值