有人可以发表有关如何为Raspberry Pi编译Xuggler的详细文章吗?

最佳答案

经过大约5天的工作后,我将使用以下指南为Raspberry Pi编译xuggler(所需时间:8小时):

先决条件:


具有512 MB RAM的Raspberry Pi Model B +(任何小于此型号的模型都不会为您提供已编译的二进制文件,并且在编译期间会卡住)
Raspbian安装在SD卡上(可以使用4GB以上的SD卡)


脚步:


切换为“ root”用户。
从基本xuggler构建页面安装标记为“必需”的依赖项(http://www.xuggle.com/xuggler/build
如下创建和导出变量(创建相关目录)

export XUGGLE_HOME=/home/pi/Downloads/xuggler
export PATH=$XUGGLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATH

创建以下链接:

sudo ln -s /usr/bin/make /usr/bin/gmake

如果您落后于任何类型的Web代理,请也设置以下变量:

export http_proxy='proxy-url:port'
export https_proxy='proxy-url:port'
export ftp_proxy='proxy-url:port'

现在移至以下目录:

cd /home/pi/Downloads/

从此处(https://github.com/artclarke/xuggle-xuggler)下载xuggler代码:

git clone https://github.com/artclarke/xuggle-xuggler.git

该代码将下载到名为“ xuggle-xuggler”的目录中
在目录“ xuggle-xuggler”中移动
如果您位于代理后面,请在文件“ build.xml”中的文件“ xml”标记下方添加以下行:

<setproxy proxyhost="proxy-url" proxyport="port"/>

现在,按如下所示编辑文件“ captive / libspeex / csrc / configure”:

从:

CFLAGS="$CFLAGS -O3 -msse"


至:

CFLAGS="$CFLAGS -O3"




从:

if test "$has_sse" = yes; then
$as_echo "#define _USE_SSE /**/" >>confdefs.h
fi


至:

#if test "$has_sse" = yes; then
#$as_echo "#define _USE_SSE /**/" >>confdefs.h
#fi


有关更多信息,请参考this
现在,按如下所示编辑文件“ captive / libspeex / csrc / configure.ac”:

从:

CFLAGS="$CFLAGS -O3 -msse"


至:

CFLAGS="$CFLAGS -O3"




从:

if test "$has_sse" = yes; then
 AC_DEFINE([_USE_SSE], , [Enable SSE support])
fi


至:

#if test "$has_sse" = yes; then
# AC_DEFINE([_USE_SSE], , [Enable SSE support])
#fi


有关更多信息,请参考this
现在,如xuggler高级构建链接(http://www.xuggle.com/xuggler/advbuild)中所列,启动命令:

ant stage

要在libX264编译过程中或编译过程中失败,为避免此过程,请在现在生成的文件中添加以下编译开关,即编辑文件'captive / libx264 / incarcerate.in':

从:

X264_OPTIONS="$X264_OPTIONS --enable-static"
X264_OPTIONS="$X264_OPTIONS --enable-pic"


至:

X264_OPTIONS="$X264_OPTIONS --disable-asm"
X264_OPTIONS="$X264_OPTIONS --enable-shared"
X264_OPTIONS="$X264_OPTIONS --enable-static"
X264_OPTIONS="$X264_OPTIONS --enable-pic"

现在运行以下命令(只能一个一个):

ant clobber
ant clean
ant stage

这次将完成所有编译步骤。
运行安装命令:

ant install

xuggler二进制文件将安装在步骤#3中定义的“ XUGGLE_HOME”位置。
用于Java二进制文件的xuggler maven存储库位于'/root/.m2/repository/xuggle/xuggle-xuggler'
您还可以检出“ ../xuggle-xuggler/dist”目录,以检查所有本机和Java二进制文件是否可以使用非Maven。
编译的二进制文件在Raspberry PI(Arch Linux,Raspbian)上运行良好。
如果您没有时间编译,请从here获取二进制文件。
在使用我编译的Java二进制文件之前,请确保在Java类路径或Shell终端中添加步骤3中定义的变量。


特别感谢11101101b的指导和帮助。

参考文献:


https://github.com/e-d/xuggle-xuggler/commit/035c676e6e289fbb4b27dc75134a4470a5bab28a
Issue #1 when compiling Xuggler for Raspberry pi with libspeex
How can I build the GPL and LGPL version of Xuggle Xuggler?
Issue #2 when compiling Xuggler for Raspberry pi with libx264
http://blog.oneiroi.co.uk/linux/ffmpeg-install-with-libx264-h264/
http://www.unix.com/unix-for-dummies-questions-and-answers/53319-change-target-symbolic-link.html
http://www.raspberrypi.org/arch-linux-arm-available-for-download/
特别鸣谢:https://groups.google.com/forum/#!topic/xuggler-users/F-fSSm46ZaI
对于x86_64 Arch,这有所帮助:while installing xuggler in ubuntu 11.10 getting error message
Getting git to work with a proxy server
Xuggler代码:https://github.com/artclarke/xuggle-xuggler
Raspberry Pi的Xuggler:https://github.com/e-d/xuggle-xuggler/tree/pi

关于raspberry-pi - 为Raspberry Pi编译Xuggler的指南,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25218879/

10-12 05:04