有人可以发表有关如何为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/