前言
为什么要做这么一个工作?从事FS开发也有些年头了,从最初的1.4版本到现在1.8版本(1.10版本一直没评估升级)。从音频(1.4)开发到视频开发(1.6)都做了,深知FS对于新手的门槛还是比较高的,尤其是入门的编译这一块。看了下ffmpeg有老外做了预编译版本,而FS原先也有预编译版本,但是是需要有系统依赖,运行也不是很方便,因此做了这么一个项目,就是把FS预编译并打包,只需要解压,可以很快执行运行跑起来整个FS。
底座系统
系统 | 平台 | 工具链 |
Debian 11 | x86_64 | gcc version 10.2.1 20210110 (Debian 10.2.1-6) |
后续考虑增加更多的系统支持,初步先支持Linux x86_64。使用bundle的方式,确保在非Debian的Linux系统上也能正常运行。
二进制压缩包下载地址
支持的FreeSWITCH版本
- 1.10.7
- 1.8.7
- 1.6.20
不考虑支持1.4及以下的版本了,版本太老了,以上几个版本都是原版代码,没做任何补丁及bugfix,也不夹带私货(如果说有,那么就是一些编译路径是有私货)。编译完成后,仅做一些基础模块的加载测试,功能暂时没时间做验证。
依赖库说明
依赖库 | 版本 | FS 1.10 | FS 1.8 | FS 1.6 |
ffmpeg | 3.2.18 | ✓ | ✓ | ✓ |
freetype | 2.12.1 | ✓ | ✓ | ✓ |
krb5 | 1.19.2 | ✓ | × | × |
ldns | 1.8.3(FS1.8~FS1.10)/1.6.17(FS1.6) | ✓ | ✓ | ✓ |
libcurl | 7.84.0 | ✓ | ✓ | ✓ |
libedit | 20210910-3.1 | ✓ | ✓ | ✓ |
libflac | 1.3.3 | ✓ | ✓ | ✓ |
libjpeg-turbo | 2.1.4 | ✓ | ✓ | ✓ |
libks | v1.8.0 | ✓ | × | × |
libogg | v1.3.4 | ✓ | ✓ | ✓ |
libopus | 1.3.1 | ✓ | ✓ | ✓ |
libpng | v1.6.37 | ✓ | ✓ | ✓ |
libpq | 13.8 | ✓ | × | × |
libshout | 2.4.6 | ✓ | ✓ | ✓ |
libsndfile | 1.0.31 | ✓ | ✓ | ✓ |
libtiff | v4.4.0 | ✓ | ✓ | ✓ |
libuuid | 1.0.3 | ✓ | ✓ | ✓ |
libverto | 0.3.2 | ✓ | × | × |
libvorbis | 1.3.7 | ✓ | ✓ | ✓ |
lua | v5.4.4 | ✓ | ✓ | ✓ |
mariadb-connector-c | 3.1.13 | ✓ | × | × |
mp3lame | 3.100 | ✓ | ✓ | ✓ |
ncurses | 6.3 | ✓ | ✓ | ✓ |
opencore-amr | 0.1.6 | ✓ | ✓ | ✓ |
openh264 | v2.1.1 | ✓ | ✓ | ✓ |
openssl | 1.1.1q(FS1.8~FS1.10)/1.0.2u(FS1.6) | ✓ | ✓ | ✓ |
pcre | 8.45(FS1.8~FS1.10)/8.32(FS1.6) | ✓ | ✓ | ✓ |
sofia-sip | v1.13.9 | ✓ | ✓ | ✓ |
spandsp | e59ca8f | ✓ | ✓ | ✓ |
speex | 1.2.1 | ✓ | ✓ | ✓ |
speexdsp | 1.2.1 | ✓ | ✓ | ✓ |
sqlite3 | 3.39.0+200 | ✓ | ✓ | ✓ |
vo-amrwbenc | 0.1.3 | ✓ | ✓ | ✓ |
x264 | 66a5bc1 | ✓ | ✓ | ✓ |
x265 | 3.4 | ✓ | ✓ | ✓ |
zlib | v1.2.12 | ✓ | ✓ | ✓ |
FS的依赖库就是这么多(应该还有部分被静态编译进去的,可能没统计进来),这也是他上手成本高的原因之一。
快速上手
由于编译是是用的我自己的路径,并不能适配所有人,因此通过脚本来定义了basedir,所以解压对应版本后,可以使用以下命令来执行相关的操作:
./bootstrap.sh # start FS ./stop.sh # stop FS ./cli.sh # run fs_cli
转载请注明: 转载自elkPi.com
本文链接地址: FreeSWITCH Builds