CentOS 7下编译FreeSWITCH 1.6

安装背景:

已经最小化安装CentOS 7。

准备工作:

挂载安装光盘,配置yum本地化安装,配置方法可以参考http://www.cnblogs.com/yoyotl/p/4877439.html。

1. 安装net-tools

  执行yum install net-tools(这一步安装是我想要ifconfig命令,和FreeSWITCH没关系)

一、执行./configue,安装如下依赖包:

2. 安装zlib-devel

  执行yum install zlib-devel

3. 安装libjpeg-devel

  执行yum install libjpeg-devel

4. 安装libpng-devel

  执行yum install libpng-devel

5. 安装freetype-devel

  执行yum install freetype-devel

6. 安装sqlite-devel

  执行yum install sqlite-devel

7.  安装libcurl-devel

  执行yum install libcurl-devel

8. 安装pcre-devel

  执行yum install pcre-devel

9.  安装speex-devel

  执行yum install speex-devel

10. 安装ldns-devel

  执行yum install ldns-devel

11. 安装libedit-devel

  执行yum install libedit-devel

12. 安装openssl-devel

  执行yum install openssl-devel

至此,configure阶段依赖的库已经安装完毕。

PS:我使用的DVD安装源文件是【CentOS-7-x86_64-Everything-1503-01.iso】

二、执行make,安装如下依赖包:

PS:FreeSWITCH官网提供了扩展包,下载地址:http://files.freeswitch.org/downloads/libs/

1. 安装libyuv

  ①解压libyuv-0.0.1280.tar.gz

  ②执行make

  ③执行make install

  ④执行cp /usr/lib/pkgconfig/libyuv.pc /usr/lib64/pkgconfig/

注意!此时需要重新执行./configue才能跳过缺少libyuv-dev这个报错。

2. 安装yasm(libvpx-1.4.0的依赖库)

  下载地址:http://www.tortall.net/projects/yasm/releases/

  ①解压yasm-1.3.0.tar.gz

  ②执行./configue

  ③执行make

  ④执行make install

3. 安装libvpx

  ①解压libvpx-1.4.0.tar.gz

  ②执行./configue

  ③执行make

  ④执行make install

  ⑤cp /usr/local/lib/pkgconfig/vpx.pc /usr/lib64/pkgconfig/

  这个安装需要好长时间啊……

注意!此时需要重新执行./configue才能跳过缺少libvpx2-dev这个报错。

4. 安装opus-devel

    执行yum install opus-devel

三、提示relocation R_X86_64_PC32 against symbol 'vpx_memalign' can not be used when making a shared object ;recompile with -fPIC(正在解决中……)。

四、虽然到目前为止还没有找到问题三的解决办法(根本原理肯定是缺库),但是祝贺你耐心的看到了这里。

  请按照官网的这篇文章一步一步来吧,我试过了,可以成功的编译。

     https://freeswitch.org/confluence/display/FREESWITCH/CentOS+7+and+RHEL+7

  哈哈,测试MCU去了,想一想还有些小激动呢。

原文地址:https://www.cnblogs.com/yoyotl/p/4881902.html