freeswitch 编译

2019年3月12日

前面三个月一直在研究webrtc源码,也算小有成效吧。但是当客户端处理完成之后发现,很多应用场景还是需要MCU对视频进行处理,所以从上周开始研究带MCU相关的服务器。目前阶段在研究freeswitch源码。本文主要介绍一下freeswitch的编译过程。

一. 下载freeswitch代码

官方地址为 https://freeswitch.org/stash/scm/fs/freeswitch.git

使用 git clone https://freeswitch.org/stash/scm/fs/freeswitch.git 命令将代码下载到本地。

备注:在用windows下载的时候,经常会出现断开连接的情况,如果也有这个问题的同学可以使用 https://github.com/lmxx/freeswitch.git 进行下载。

本文编译的版本为 v1.8.5,故下载完成需要进入文件夹执行如下命令:

git checkout -b v1.8.5

二. 编译

1 windows

Windows版本编译比较简单,直接打开Freeswitch.2017.sln文件

右键点击 FreeSwitchConsole 工程,编译即可。(freeswitch会自动下载相关依赖,并进行编译)

2 linux(Ubuntu 16.04)

注:本文使用的是Ubuntu16.04  x64位版本,其它版本可能会有差异。

(1) 依赖库按照

sudo apt-get install autoconf
           sudo apt-get install libtool libtool-bin 
           sudo apt-get install zlib1g-dev 
           sudo apt-get install libjpeg-dev
           sudo apt-get install  libsqlite3-dev
           sudo apt-get install libcurl4-openssl-dev
           sudo apt-get install libpcre3-dev
           sudo apt-get install libspeexdsp-dev libspeex-dev
           sudo apt-get install libldns-dev
           sudo apt-get install libedit-dev
           sudo apt-get install libtiff-dev
           sudo apt-get install yasm
           sudo apt-get install liblua5.2-dev  (freeswtich v1.8.5仅支持lua5.1和5.2版本,其他版本无法建立依赖关系)
           sudo apt-get install libopus-dev
           sudo apt-get install build-essential
           sudo apt-get install uuid-dev 
           sudo apt-get install libsndfile-dev
           sudo apt-get install libpq-dev 
           sudo apt-get install libavformat-dev
           sudo apt-get install libavresample-dev 
           sudo apt-get install libswscale-dev

其他依赖库:

cmake:(部分依赖库编译需要cmake版本高于 3.6.2,但是本机的稳定版本最高只能升级到3.5,故用以下方法升级)
           去 https://cmake.org/download/ 现在cmake代码,本文下载的版本是 cmake-3.11.3.tar.gz ,然后执行如下命令
           tar xzvf cmake-3.11.3.tar.gz 
           cd cmake-3.11.3/
           ./configure 
           make
           sudo make install
           以上执行完成后 输入 cmake -version 产看版本号

libks:
           git clone https://github.com/signalwire/libks.git
           cd libks/
           git checkout -b 1.1.0 
           mkdir build
           cd build
           cmake -DCMAKE_BUILD_TYPE=Release ..  (如果要编译debug版本,将Release改为Debug)
           make
           sudo make install (如果遇到问题,打开cmake_install.cmake文件,找到错误对应的行数,把相应内容注释掉即可)

signalwire-c:
           git clone https://github.com/signalwire/signalwire-c.git
           cd signalwire-c/
           mkdir build
           cd build
           cmake -DCMAKE_BUILD_TYPE=Release ..  (如果要编译debug版本,将Release改为Debug)
           make
           sudo make install (如果遇到问题,打开cmake_install.cmake文件,找到错误对应的行数,把相应内容注释掉即可)

(2) 编译freeswitch

./bootstrap.sh
           ./configure
           make
           sudo make install
           sudo make sounds-install 
           sudo make moh-install 
           sudo make cd-sounds-install 
           sudo make cd-moh-install

3. mac

在外出差,mac代码没带,后续编译了再补充

原文地址:https://www.cnblogs.com/lmxx/p/10519505.html

时间: 2024-10-10 13:16:10

freeswitch 编译的相关文章

FreeSWITCH编译Windows版本

下载FreeSWITCH官网推荐的1.2.23版本源代码,里面自带VS2012项目方案文件,经过反复尝试,现在找到了一点小技巧. 因为编译的时候要从官网下载很多依赖库文件,所以编译要按照一定的顺序进行.生成顺序如下: 1._Downloads 2.Codecs 3.Dialplans 4.Directions 5.Endpoints 6.Event Handlers 7.Formats 8.Languages 9.Loggers 10.say 11.Sound Files 12.XML Inte

freeswitch编译

debian的包太老了,添加新源 echo "deb http://files.freeswitch.org/repo/deb/debian/ jessie main" > /etc/apt/sources.list.d/freeswitch.list wget -O - http://files.freeswitch.org/repo/deb/debian/key.gpg |apt-key add - echo "deb http://files.freeswitch

64位FreeSWITCH编译安装(版本1.4.20)

1.安装64位的CentOS6.5操作系统(勾选的服务器版本安装). 2.下载FreeSWITCH安装包以及关联的lib库.下载地址http://files.freeswitch.org/downloads/. 3.此次安装的FreeSWITCH版本为1.4.20. 4.执行./devel-bootstrap.sh. 5.根据错误信息依次安装关联的依赖库(挂载系统安装盘(mount /dev/cdrom /media)通过配置进行本地yum安装): ①gcc ②gcc-c++ ③zlib-dev

FreeSwitch SIP(1):linux下编译安装v1.4

本文,原文连接: http://blog.csdn.net/freewebsys/article/details/46546205 ,转载请注明出处! 1,关于FreeSwitch FreeSWITCH 是一个电话的软交换解决方案,包括一个软电话和软交换机用以提供语音和聊天的产品驱动.FreeSWITCH 可以用作交换机引擎.PBX.多媒体网关以及多媒体服务器等. FreeSWITCH 支持多种通讯技术标准,包括 SIP, H.323, IAX2 以及 GoogleTalk ,可以方便的与其他开

windows下编译FreeSwitch

FreeSWITCH的是一个跨平台的开源电话交换平台 windows版本:win7 64位的操作系统 [下载] 我下载的是release版本,下载的文件是freeswitch-1.4.20.zip,下载的地址是: http://files.freeswitch.org/freeswitch-releases/ 解压后的目录结构如下: [编译] 1,执行批处理文件:Freeswitch.2008.sln.release.bat,提示: VS2008及以前的支持已经不再更新了,因此不推荐使用.VS2

freeswitch源码编译 ./configure 遇到的问题

从FreeSWITCH 安装过程./configure 时遇到sqlite 的问题开始: checking for sqlite3 >= 3.6.20… Package sqlite3 was not found in the pkg-config search path. Perhaps you should add the directory containing `sqlite3.pc’ to the PKG_CONFIG_PATH environment variable No pack

CentOS 7下编译FreeSWITCH 1.6

安装背景: 已经最小化安装CentOS 7. 准备工作: 挂载安装光盘,配置yum本地化安装,配置方法可以参考http://www.cnblogs.com/yoyotl/p/4877439.html. ① 安装net-tools 执行yum install net-tools进行安装. Net-tools 包含一系列程序,构成了 Linux 网络的基础. 包含arp, dnsdomainname, domainname, hostname, ifconfig, nameif, netstat,

freeSWITCH 视频通话

一,freeSWITCH安装 本实验基于CentOS 6 源码编译安装FreeSWITCH,详细安装过程见下: http://990487026.blog.51cto.com/10133282/1921010 二,配置FreeSWITCH,加载H26x模块 1,FreeSWITCH先处于关闭状态. 2,修改配置文件: [[email protected] ~]# vim ~/freeswitch/etc/freeswitch/vars.xml 将:   <X-PRE-PROCESS cmd=&quo

freeswitch嵌入python脚本

操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 python版本:2.7.9 开启python模块 安装python lib库 apt-get install python-dev 编辑modules.conf,开启python模块: languages/mod_python 编译安装: ./configure && make && make install 在modules.conf.xml中开启python支持: 启动freeswitc