【发布时间】:2015-12-11 17:19:23
【问题描述】:
有人可以发布详细的文章,关于如何为 Raspberry Pi 编译 Xuggler?
【问题讨论】:
标签: raspberry-pi raspbian xuggler
有人可以发布详细的文章,关于如何为 Raspberry Pi 编译 Xuggler?
【问题讨论】:
标签: raspberry-pi raspbian xuggler
工作了大约 5 天后,我将以下指南用于为 Raspberry Pi 编译 xuggler(所需时间:8 小时):
先决条件:
步骤:
切换到“root”用户。
从 Basic 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
如果您使用任何类型的网络代理,请同时设置以下变量:
export http_proxy='proxy-url:port'
export https_proxy='proxy-url:port'
export ftp_proxy='proxy-url:port'
现在移动到以下目录:
cd /home/pi/Downloads/
从这里下载 xuggler 代码(https://github.com/artclarke/xuggle-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 的指导和帮助。
参考资料:
【讨论】: