当前位置: > Linux教程 > Linux学习 >

SRS 编译安装坑

时间:2016-05-30 15:28来源:linux.it.net.cn 作者:IT
SRS 编译

start

#./objs/srs -c conf/rtmp.conf
kill

#ps aux | grep srs | awk {'print $2'} | xargs kill
srs 2.0 release

[root@cp01-jinya.epc.baidu.com trunk]# ./configure
./configure_origion: line 67: syntax error near unexpected token `"`dirname $__mfile`"'
./configure_origion: line 67: `    SRS_MODULES+=("`dirname $__mfile`")'
#将configure 的 += 改为数组的 XXX=(${XXX[8]} "sdfsf");应该有 4 处

[root@cp01-jinya.epc.baidu.com trunk]# make
...
srs_ingest_flv.c:262: error: for each function it appears in.)
srs_ingest_flv.c: In function `re_cleanup':
srs_ingest_flv.c:274: error: `useconds_t' undeclared (first use in this function)
make[3]: *** [objs/srs_ingest_flv] Error 1
make[3]: Leaving directory `/home/forum/srs/trunk/research/librtmp'
make[2]: *** [ssl] Error 2
make[2]: Leaving directory `/home/forum/srs/trunk/research/librtmp'
make[1]: *** [librtmp] Error 2
make[1]: Leaving directory `/home/forum/srs/trunk'
make: *** [default] Error 2
[root@cp01-jinya.epc.baidu.com trunk]# vim objs/include/srs_librtmp.h
#加上声明

// typedefs
typedef int64_t useconds_t;
typedef int srs_bool;
...
20160311

升级make

./configure
make
后,make在源文件夹里面。cp到 /usr/bin/下面(注意做好备份)

编译

Makefile:3: *** unterminated call to function 'foreach': missing ')'.  Stop.
看看是不是有换行,有换行就去掉
http://stackoverflow.com/questions/18989598/makefile-unterminated-call-to-function-foreach-missing-stop

编译–with-ffmpeg

编译第三方库的时候,从auto/里面建立ln -sf 到 objs里
比如 ffmpeg, 从objs/ffmpeg.src里面建立的ln
但是编译ffmpeg的时候,可能会遇到 disable-asm的情况,请确认是x264 问题还是 ffmpeg问题

fdk-aac编译不过
https://github.com/mstorsjo/fdk-aac/issues/6

diff --git a/Makefile.am b/Makefile.am
index e995b0a..efa6fcb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
     -I$(top_srcdir)/libPCMutils/include
AM_CXXFLAGS = -fno-exceptions -fno-rtti
-libfdk_aac_la_LINK = $(LINK) $(libfdk_aac_la_LDFLAGS)
+#libfdk_aac_la_LINK = $(LINK) $(libfdk_aac_la_LDFLAGS)
# Mention a dummy pure C file to trigger generation of the $(LINK) variable
nodist_EXTRA_libfdk_aac_la_SOURCES = dummy.c
diff --git a/configure.ac b/configure.ac
index c52d0b9..f489835 100644
--- a/configure.ac
+++ b/configure.ac
@@ -19,7 +19,11 @@ AM_CONDITIONAL(EXAMPLE, test x$example = xyes)
dnl Checks for programs.
AC_PROG_CC
AC_PROG_CXX
-LT_INIT
+
+AM_PROG_CC_C_O
+
+AC_PROG_LIBTOOL
+AC_SUBST(LIBTOOL_DEPS)
AC_CHECK_LIB([m], [sin])



(责任编辑:IT)
------分隔线----------------------------