CentOS7环境源码安装freeswitch1.10.7
操作系统 :CentOS 7.6_x64
freeswitch版本 :1.10.7
一、安装步骤
1、下载freeswitch源代码
wget http://files.freeswitch.org/releases/freeswitch/freeswitch-1.10.7.-release.tar.gz
2、安装依赖环境
yum install autoconf automake postgresql-devel libtool gcc gcc-c++ libtiff libtiff-devel libjpeg-devel openssl-devel
yum install libuuid-devel yasm nasm sqlite-devel libcurl-devel speex-devel ldns-devel libedit-devel lua-devel libsndfile-devel
3、 开始安装,依次执行如下命令
tar zxvf freeswitch-1.10.7.-release.tar.gz
cd freeswitch-1.10.7.-release
./rebootstrap.sh
#CFLAGS="-O3 -fPIC" ./configure --disable-signalwire (可选)
CFLAGS="-O3 -fPIC" ./configure
make -j
make install
make hd-sounds-install && make hd-moh-install
# make cd-sounds-install && make cd-moh-install (可选)
make samples
4、 建立软连接,以方便使用
ln -sf /usr/local/freeswitch/bin/freeswitch /usr/local/bin/
ln -sf /usr/local/freeswitch/bin/fs_cli /usr/local/bin/
启动freeswith
freeswitch -nc -nonat :后台启动freeswitch
使用命令行客户管理freeswith
fs_cli :进入客户端(/exit 退出客户端)
关闭freeswitch
freeswitch -stop
5、 打包二进制文件
cd /usr/local/
tar zcvf freeswitch-1.10.7-release.tar.gz freeswitch/
二、常见问题
问题1:
configure: error: no usable spandsp;please install spandsp3
解决方法:
git clone https://github.com/freeswitch/spandsp.git
cd spanddsp
./bootstrap.sh
./configure
make install
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}
ldconfig
问题2:
checking for sofia-sip-ua >= 1.13.6... configure: error: no usable sofia-sip; please install sofia-sip-ua devel package or equivalent
解决方法:
git clone https://github.com/freeswitch/sofia-sip.git
cd sofia-sip/
./bootstrap.sh
./configure
make
make install
ldconfig
问题3:
提示未安装signalwire
解决办法:
1)安装 libks(signalwire的依赖项)
yum install libuuid-devel libatomic
git clone https://github.com/signalwire/libks.git
cd libks
cmake .
make
make install
2)安装 signalwire
git clone https://github.com/signalwire/signalwire-c.git
cd signalwire-c
cmake .
make
sudo make install
问题4:
libtool: Version mismatch error. This is libtool 2.4.6 Debian-2.4.6-2, but the
libtool: definition of this LT_INIT comes from libtool 2.4.2.
解决方法:
autoreconf -fiv
问题5:
/usr/local/lib/libavformat.a(allformats.o): relocation R_X86_64_32 against symbol `ff_a64_muxer' can not be used when making a shared object; recompile with -fPIC
解决方法:
ffmpeg未安装或配置不对,重新安装ffmpeg即可,具体可参考:https://www.cnblogs.com/MikeZhang/p/centos7-ffmpeg.html
问题6:
You must install libopus-dev to build mod_opus.
解决方法:
wget https://archive.mozilla.org/pub/opus/opus-1.3.1.tar.gz
tar zxvf opus-1.3.1.tar.gz
cd opus-1.3.1
./configure --enable-shared
make
make install
cp /usr/local/lib/pkgconfig/opus.pc /usr/lib64/pkgconfig
三、其它
1、使用cmake时,需要升级版本,或直接下载二进制使用:
cmake下载地址:https://cmake.org/download/
使用如下:
tar zxvf cmake-3.23.1-linux-x86_64.tar.gz
mv cmake-3.23.1-linux-x86_64 /usr/local/
ln /usr/local/cmake-3.23.1-linux-x86_64/bin/cmake -s /usr/local/bin/cmake
2、需要安装sndfile库,否则会无法读取wav文件。
3、本文涉及freeswitch源代码及依赖文件如下:
CentOS7环境源码安装freeswitch1.10.7的更多相关文章
- CentOS7 实战源码安装mysql5.7.17数据库服务器
CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建 mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...
- 搭建LNAMP环境(二)- 源码安装Nginx1.10
上一篇:搭建LNAMP环境(一)- 源码安装MySQL5.6 1.yum安装编译nginx需要的包 yum -y install pcre pcre-devel zlib zlib-devel ope ...
- CentOS7下源码安装mysql5.6
目录 准备工作 运行环境 确认你的安装版本 下载mysql 安装mysql 准备安装环境 编译和安装 配置mysql 单实例配置 单实例配置方法 添加防火墙 ...
- CentOS7下源码安装5.6.23
清理CentOS7下的MariaDB. [root@localhost ~]#rpm -qa | gremp mariadb [root@localhost ~]# rpm -e --node ...
- centos7 中源码安装nginx
使用nginx有一段时间了,还是有很多东西不懂的,在这里做一下自己学习过程中的一些整理,能使自己得到提升. 1.环境:centos7 1511 最小化安装 2.下载nginx,可以在系统中下载,也可 ...
- centos下配置LNMP环境(源码安装)
准备工作,安装依赖库 yum -y install gcc automake autoconf libtool make gcc-c++ glibc libxslt-devel libjpeg lib ...
- centos环境源码安装postgresql9.4
源码安装简要步骤 下载PostgreSQL 源码包 下载根目录地址:http://ftp.postgresql.org/ 本人选择的是当前最新版本v9.4.1:http://ftp.postgre ...
- CentOS7 下源码安装 python3
CentOS 7 下源码安装 python3 在CentOS7下,默认安装的是python2.7:为满足项目要求,安装python3 的方法如下: 1. 首先安装python3.6可能使用的依 ...
- Redis集群生产环境源码安装
安装redis集群 根据各人单位生产环境用户搭建一.安装环境 操作系统:centos7.6 关闭防火墙.关闭selinux redis1:192.168.26.128 redis2:192.1 ...
- 国产化设备鲲鹏CentOS7上源码安装Python3.7
具体编译过成与正常的Python源代码在x86平台上的过程无异,此篇随笔仅当用作复制黏贴的备忘录.不得不说在一个老旧系统上安装一个老旧的Python版本,从头编译一个Python还是一个较为稳健的选择 ...
随机推荐
- [Qt开发/毕业设计/求职项目]局域网环境下远程文件发送部署系统-服务端、客户端双端的讲解
写在前面 本文旨在做一个简单的代码讲解,我会给出源码,然后整个代码的讲解都在源码的基础上进行. 代码可能会随着更新而进行修改,但是整体框架变化不会太大. 整个文章内容不会太多,算是我自己的一个复盘,整 ...
- ffmpeg 字幕解码
原文: https://blog.csdn.net/u011283226/article/details/102241233 [写在前面] 在前一篇,我已经讲过了读取外挂字幕并显示的方法:理解过滤图并 ...
- SpringMVC05——SSM整合
整合SSM 需求:熟练掌握MySQL数据库,Spring,JavaWeb及MyBatis知识,简单的前端知识 CREATE DATABASE `ssmbuild`; USE `ssmbuild`; D ...
- SQLServer 执行计划的简单学习和与类型转换的影响
SQLServer 执行计划的简单学习和与类型转换的影响 背景 最近一直在看SQLServer数据库 索引.存储.还有profiler的使用 并且用到了 deadlock graph 但是感觉还是不太 ...
- [转帖]关于kafka压力测试(使用官方自带脚本测试)
文章目录 kafka官方自带压测脚本文件 Producer生产者环境测试 测试命令 返回测试结果 Consumer消费者环境测试 测试命令 测试结果说明 提升kafka的吞吐量 可通过以下的方式来提升 ...
- [转帖]配置logback上报日志到Skywalking
https://zhuanlan.zhihu.com/p/506119895 配置logback上报日志到Skywalking 配置logback上报日志到skywalking需要引入toolkit依 ...
- OpenEuler切换内核的方法-bcc学习后续
OpenEuler切换内核的方法 摘要 昨天使用OpenEuler 22.03 LTS学习bcc但是一直不行. 没办法切换到CentOS8 还有 Anolis 8 很容易就可以直接还是用了 yum i ...
- React中生命周期的讲解
什么是生命周期? 从出生到成长,最后到死亡,这个过程的时间可以理解为生命周期. React中的组件也是这么一个过程. React的生命周期分为三个阶段:挂载期(也叫实例化期).更新期(也叫存在期).卸 ...
- echasrts定义折线图legend的样式-优化
option = { title: { text: '折线图堆叠' }, tooltip: { trigger: 'axis' }, //定义折线图legend的形状哈 legend: { itemW ...
- 对象中是否有某一个属性是否存在有三种方法 in hasOwnProperty Object.hasOwn
如何看某个对象中没有某一个属性 如果我们要检测对象是否拥有某一属性,可以用in操作符 var obj= { name: '类老师', age: 18, school: '家具' }; console. ...
