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去了,想一想还有些小激动呢。