编译时的一个错误:
/usr/bin/ld: /home/quantum6/telecom/build_libs/lib/libtinyRTP.so: undefined reference to `crypto_get_random'
collect2: error: ld returned 1 exit status
make: *** [Makefile:687:telepresence] 错误 1
具体来说,就是libtinyRTP引用到srtp,而srtp中没有这个函数。可是要编译通过,代码又不好大改(doubango的接口真的很老了)。怎么办?
在libsrtp的历史记录中,有以下一段内容:
Commits on Nov 5, 2014
Remove crypto_get_random() since it's been agreed that libsrtp should… …
@jfigus
jfigus committed on 5 Nov 2014
就是说,2014年开始就删除了。结果过了6年,doubango还是没有更新。可能为了兼容?
解决办法就是使用老库,或者删除这个代码。
https://github.com/quantum6/libsrtp-1.5.0