Centos7源代码安装freeswitch和启动freeswitch

centos7下安装freeswitch版本:1.6。

1.下载源代码:
进入目录 cd /usr/local/src

克隆原代码
git clone -b v1.6 https://freeswitch.org/stash/scm/fs/freeswitch.git freeswitch

2.开始编译
进入freeswitch目录 cd/ freeswitch
运行 ./bootstrap.sh
如果会出现类似autoconf not found错误提示,是因为没有下载第三方依赖库。

freeswitch依赖的第三方库有:gcc-c++ ,wget alsa-lib-devel, autoconf ,automake ,bison ,broadvoice-devel ,bzip2 ,curl-devel, db-devel ,e2fsprogs-devel, flite-devel ,g722_1-devel, 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 ,libtiff-devel ,libtheora-devel, libtool, 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, python26-devel ,python-devel ,soundtouch-devel,speex-devel, sqlite-devel ,unbound-devel, unixODBC-devel ,libuuid-devel ,which yasm zlib-devel。

3.安装依赖库:
(1)可以一个个安装,如下:
1. yum install autoconf
2. yum install automake
3. yum install libtool
……
(2)也可以全部一起安装:
yum install -y git gcc-c++ wget alsa-lib-devel autoconf automake bison broadvoice-devel bzip2 curl-devel db-devel e2fsprogs-devel flite-devel g722_1-devel 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 libtiff-devel libtheora-devel libtool 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 python26-devel python-devel soundtouch-devel speex-devel sqlite-devel unbound-devel unixODBC-devel libuuid-devel which yasm zlib-devel

4.再一次编译
运行 ./bootstrap.sh
接着运行 ./configure

如果出现以下界面,就是默认配置成功.
这里写图片描述

5.运行 make 命令
如果出现以下界面,则编译成功。

这里写图片描述

6.安装
运行make install命令
如果出现以下界面,则安装成功。

这里写图片描述

7.启动freeswitch

进入cd /usr/local/freeswitch/bin/目录,然后运行 ./freeswitch命令。

如果出现以下界面,则运行成功。

这里写图片描述

8.配置freeswitch在任何一个路径都可以运行

ln -sf /usr/local/freeswitch/bin/freeswitch /usr/bin/
ln -sf /usr/local/freeswitch/bin/fs_cli /usr/bin/

9.如果运行freeswitch出现以下错误,是因为端口被占用了。
[root@localhost ~]# freeswitch
Cannot lock pid file /usr/local/freeswitch/run/freeswitch.pid.

解决办法:可以重启Linux或者关闭占用端口的进程。

10.如果freeswitch启动成功,但是linphone注册不上。

解决办法:systemctl stop firewalld.service (关闭防火墙)

### 安装 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 ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值