在Debian 9上安装mod_ilbc

2020-12-21 15:39:21 浏览数 (1)

Debian 9发布有一段时间了,FreeSWITCH最新的代码也做了适配,只是还没有发布的包。

前几天给客户装了一个Debian 9的系统,遇到了一些坑基本都解决了,其中一个就是安装 iLBC的问题。

make mod_ilbc-install 出现如下错误:

Makefile:913: *** You must install libilbc-dev to build mod_ilbc. Stop.

这是由于libilbc-dev没找到。换了好几个Debian的源,没有找到ilbc-dev,只好到官方下载代码手工编译。

FreeSWITCH用到了很多第三方的库,有一些库的代码FreeSWITCH自己维护了一个版本,放在这里:

https://freeswitch.org/stash/projects/SD

Clone源代码:

git clone https://seven@freeswitch.org/stash/scm/sd/libilbc.git

编译安装

./bootstrap.sh && ./configure && make -j

make install

安装后显示一下相关参数

# pkg-config --cflags ilbc

-I/usr/local/include

# pkg-config --libs ilbc

-L/usr/local/lib -lilbc

到mod_ilbc源代码目录下

cd src/mod/codecs/mod_ilbc

修改Makefile.am,把 if HAVE_ILBC 及 else 后面的相关逻辑去掉,Makefile.am变成下面的样子:

include $(top_srcdir)/build/modmake.rulesam

MODNAME=mod_ilbc

ILBC_CFLAGS=-I/usr/local/include

ILBC_LIBS=-L/usr/local/lib -lilbc

mod_LTLIBRARIES = mod_ilbc.la

mod_ilbc_la_SOURCES = mod_ilbc.c

mod_ilbc_la_CFLAGS = (AM_CFLAGS) (ILBC_CFLAGS)

mod_ilbc_la_LIBADD = (switch_builddir)/libfreeswitch.la (ILBC_LIBS)

mod_ilbc_la_LDFLAGS = -avoid-version -module -no-undefined -shared

然后再执行 make ,系统就会重新生成 Makefile 并编译。

可以收工啦。

0 人点赞