darwin streaming server 6.0.3 Linux编译

xiaoxiao2021-02-27  322

说明:

Darwin Streaming Server官方网站

先下载源码 https://github.com/macosforge/dss/releases/download/6.0.3/DarwinStreamingSrvr6.0.3-Source.tar 再下载linux补丁,其实就是修改了一些文件适用于linux环境 http://www.abrahamsson.com/dss-6.0.3.patch 上面如果失效了就自己找一下 1.基本的操作 创建一个目录,来存放代码 mkdir  dss mv DarwinStreamingSrvr6.0.3-Source.tar dss/ mv dss-6.0.3.patch dss/ tar -xvf  DarwinStreamingSrvr6.0.3-Source.tar cd DarwinStreamingSrvr6.0.3-Source patch -p1 < ../dss-6.0.3.patch 2.重点的操作 直接编译是有问题的,为了更清晰的理解,我修改了Buildit文件。 而且去掉了不需要编译的项目,如果需要可以参考Buildit,把对应的需要编译的添加进来就可以了 仔细看他的Buildit里面内容是为了适用平台所以做了switch 我就重新创建一个文件 vim build_linux.sh #!/bin/sh OSNAME=`uname` HARDWARENAME=`uname -m` PLAT=$OSNAME.$HARDWARENAME echo "Darwin Streaming Server" echo "-----------------------" echo "--------" $PLAT "--------" CPLUS=gcc CCOMP=gcc LINKER='gcc' MAKE=make COMPILER_FLAGS="-D_REENTRANT -D__USE_POSIX -D__linux__ -pipe" INCLUDE_FLAG="-include" CORE_LINK_LIBS="-lpthread -ldl -lstdc++ -lm -lcrypt" SHARED=-shared MODULE_LIBS= if [ -f /usr/include/socketbits.h ]; then NEED_SOCKETBITS=1 export NEED_SOCKETBITS fi echo Building for $PLAT with $CPLUS export CPLUS export CCOMP export LINKER export COMPILER_FLAGS export INCLUDE_FLAG export CORE_LINK_LIBS export SHARED export MODULE_LIBS echo $* echo Building CommonUtilitiesLib for $PLAT with $CPLUS cd CommonUtilitiesLib/ $MAKE -f Makefile.POSIX $* echo Building QTFileLib internal for $PLAT with $CPLUS cd ../QTFileLib/ if [ "$*" = "clean" ] ; then $MAKE -f Makefile.POSIX $* else $MAKE -f Makefile.POSIX all $* fi echo Building StreamingServer for $PLAT with $CPLUS cd .. $MAKE -f Makefile.POSIX $* 然后在修改一下关于少了-ldl 在Makefile.POSIX 中的libs 的最后添加 -ldl(注意是最后) 然后就是代码修改一下,在Server.tproj/main.cpp中(查找一下i386),添加一个defined(__x86_64__) 然后在执行sh build_linux.sh 就可以完成了 目录下就有DarwinStreamingServer

转载请注明原文地址: https://www.6miu.com/read-2625.html

最新回复(0)