Ash*_*rma 2 xuggler raspberry-pi raspbian
有人可以发一篇详细的文章,关于如何为Raspberry Pi编译Xuggler?
在工作了大约5天之后,我将使用以下指南为Raspberry Pi编译xuggler(所需时间:8小时):
先决条件:
脚步:
切换到"root"用户.
从Basic xuggler构建页面安装标记为"Required" 的依赖项(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
Run Code Online (Sandbox Code Playgroud)创建以下链接:
sudo ln -s /usr/bin/make /usr/bin/gmake
Run Code Online (Sandbox Code Playgroud)如果您在任何类型的Web代理后面,那么也设置以下变量:
export http_proxy='proxy-url:port'
export https_proxy='proxy-url:port'
export ftp_proxy='proxy-url:port'
Run Code Online (Sandbox Code Playgroud)现在转到以下目录:
cd /home/pi/Downloads/
Run Code Online (Sandbox Code Playgroud)从这里下载xuggler代码(https://github.com/artclarke/xuggle-xuggler):
git clone https://github.com/artclarke/xuggle-xuggler.git
Run Code Online (Sandbox Code Playgroud)代码将下载到名为'xuggle-xuggler'的目录中
移动目录'xuggle-xuggler'
如果您在代理后面,请在文件'build.xml'中添加以下行,就在文件中'property'xml标记的下方:
<setproxy proxyhost="proxy-url" proxyport="port"/>
Run Code Online (Sandbox Code Playgroud)现在编辑文件'captive/libspeex/csrc/configure',如下所示:
从:
CFLAGS="$CFLAGS -O3 -msse"
Run Code Online (Sandbox Code Playgroud)
至:
CFLAGS="$CFLAGS -O3"
Run Code Online (Sandbox Code Playgroud)
和
从:
if test "$has_sse" = yes; then
$as_echo "#define _USE_SSE /**/" >>confdefs.h
fi
Run Code Online (Sandbox Code Playgroud)
至:
#if test "$has_sse" = yes; then
#$as_echo "#define _USE_SSE /**/" >>confdefs.h
#fi
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此
现在编辑文件'captive/libspeex/csrc/configure.ac',如下所示:
从:
CFLAGS="$CFLAGS -O3 -msse"
Run Code Online (Sandbox Code Playgroud)
至:
CFLAGS="$CFLAGS -O3"
Run Code Online (Sandbox Code Playgroud)
和
从:
if test "$has_sse" = yes; then
AC_DEFINE([_USE_SSE], , [Enable SSE support])
fi
Run Code Online (Sandbox Code Playgroud)
至:
#if test "$has_sse" = yes; then
# AC_DEFINE([_USE_SSE], , [Enable SSE support])
#fi
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此
现在,如xuggler advance build链接(http://www.xuggle.com/xuggler/advbuild)中所列,启动命令:
ant stage
Run Code Online (Sandbox Code Playgroud)在编译libX264时或编译期间,该过程将失败,以绕过它,在现在生成的文件中添加以下编译开关,即编辑文件'captive/libx264/incarcerate.in':
从:
X264_OPTIONS="$X264_OPTIONS --enable-static"
X264_OPTIONS="$X264_OPTIONS --enable-pic"
Run Code Online (Sandbox Code Playgroud)
至:
X264_OPTIONS="$X264_OPTIONS --disable-asm"
X264_OPTIONS="$X264_OPTIONS --enable-shared"
X264_OPTIONS="$X264_OPTIONS --enable-static"
X264_OPTIONS="$X264_OPTIONS --enable-pic"
Run Code Online (Sandbox Code Playgroud)现在运行以下命令(仅一个一个):
ant clobber
ant clean
ant stage
Run Code Online (Sandbox Code Playgroud)这次所有编译步骤都将完成.
运行install命令:
ant install
Run Code Online (Sandbox Code Playgroud)xuggler二进制文件将安装在步骤#3中定义的"XUGGLE_HOME"位置.
java二进制文件的xuggler maven存储库位于'/root/.m2/repository/xuggle/xuggle-xuggler'
您还可以查看'../xuggle-xuggler/dist'目录,检查所有本机和Java二进制文件,以便您使用非maven类型.
已编译的二进制文件在Raspberry PI(Arch Linux,Raspbian)上运行良好.
如果您没有时间编译,请从此处获取二进制文件.
在使用我编译的java二进制文件之前,确保在java类路径或shell终端中添加步骤#3中定义的变量.
特别感谢11101101b的指导和帮助.
参考文献:
| 归档时间: |
|
| 查看次数: |
1171 次 |
| 最近记录: |