MicroSIP 编译教程 VS2017-x86版本
编译环境介绍
前期准备工作
- 安装vs2017
- windows环境下安装msys2;msys2需要安装mingw-w64-i686-toolchain,mingw-w64-x86_64-toolchain分别对应编译32位程序和64位程序;
- 编译ffmpeg(视频编解码),需要x264支持;详细情况可参考我的另一篇文章:msys2环境搭建+libx264+ffmpeg编译教程
- 编译SDL2.0(图形界面么支持),官网下载SDL2-2.0.10.tar.gz。
- 编译libvpx(视频编解码),github上libvpx-1.8.1.tar.gz;github传输慢可以选择上码云,编译的时候记得选择V8编译选项。编译命令如下 >./configure --enable-static --target=x86-win32-vs2010 --enable-vp8-encoder --enable-vp8-decoder
- 编译opus-1.3.1,我选择的最新稳定版本opus-1.3.1.tar.gz。
- OpenSSL,可选的,更具需要编译。
- 编译pjproject,官网下载pjproject-2.9.tar.bz2
- 编译MicroSIP,我选择的是当前最新版本MicroSIP-3.19.21-src.7z;大家根据需求*选择。
- ffmpeg参考另一篇文章,下面我会详细讲一下pjproject的编译,其他的第三方库源码中自带vs工程,大家无脑编译即可。ffmpeg也是可选的编译项,盖因为MicroSIP中需要使用x264编码,大家也可以选择OpenH264进行h264的编码,因为libx264是支持GPL开源协议(使用它代表你的程序需要GPL开源)。
编译要点
- ffmpeg需要编译动态库文件,我吃过亏(第一次编译的静态库,结果在MicroSIP中很多库冲突,且缺少一些链接错误)。
- OpenSSL需要的话,加上宏
#define PJ_HAS_SSL_SOCK 1
。
- 然后就是pjproject的config_site.h配置了,具体情况请见图。
- 编译完成后运行情况如下:
参考文献