Here is a formatted version of my answer in a published Google Document。
出于完整性(在情况下,链接去死一天),这里是-很好的格式较少的文本:
大厦Xuggle Xuggler(GPL和LGPL许可版本)
[Linux的32 64位,Windows 32位,Windows 64位]
要构建Xuggle Xuggler库,您需要两个运行Ubuntu 11.10(32位和64位操作系统)的Linux虚拟机, 。构建Linux 32位,交叉编译Windows 32位和交叉编译Windows 64位二进制文件需要32位版本的操作系统。构建Linux 64位二进制文件需要64位版本的操作系统。
使用VirtualBox,我使用ubuntu-11.10-server-i386.iso和ubuntu-11.10-server-amd64.iso磁盘映像创建了上述两个虚拟机。这些是Ubuntu的无头版服务器版本。安装操作系统后,请按照以下步骤构建Xuggler(欢迎您来尝试不同的依赖版本,而不是使用root用户,但是这是我做过什么成功构建):
切换到root用户:
sudo su
只需使用root用户的主目录:
cd /root
更新apt-get的使用特定的存储库:
apt-get install python-software-properties
add-apt-repository ppa:ferramroberto/java
apt-get update
安装Java:
apt-get install sun-java6-jdk sun-java6-plugin
验证的HotSpot的Java 6 JVM是默认的Java:
java -version
如果你的Java版本不正确出现时,通过运行配置默认:
update-alternatives --config java
安装gcc,g ++,make和所有其他的build essentials:
apt-get install build-essential
安装YASM:
apt-get install yasm
安装Open SSL:
apt-get install openssl
安装软件包配置:
apt-get install pkg-config
安装的Git:
apt-get install git
安装Ant:
apt-get install ant-optional
安装的JUnit:
apt-get install junit
安装MingGW,以便能够生成适用于Windows(的mingw-W64可以做32位和64位的Windows):
apt-get install mingw-w64
下载LGPL配置的Xuggle源代码(来自原始GPL xuggle代码的Jeff Wallace's fork代码的Ed代码)或原始GPL版本:
LGPL: git clone https://github.com/e-d/xuggle-xuggler.git
GPL: git clone https://github.com/xuggle/xuggle-xuggler.git
编译并构建JAR文件(里面带有二进制文件)。确保在64位版本的Ubuntu上运行64位Linux版本。另外请注意,在构建之间,您需要运行“ant clobber”以从以前的体系结构中删除所有已编译的文件。构建运行:
(32/64-bit Linux): ant stage
(64-bit Windows): ant -Dbuild.configure.os=x86_64-w64-mingw32 stage
(32-bit Windows): ant -Dbuild.configure.os=i686-w64-mingw32 stage
JAR文件将位于/ dist/lib目录中。
如果您需要Linux二进制文件额外在CentOS上工作,您现在需要将GCC和G ++的版本更改为使用3.4而不是3.6。
安装GCC 4.4:
apt-get install gcc-4.4
更新符号链接使用4.4(具体拱链路将是在32位VM不同):
rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
rm /usr/bin/x86_64-linux-gnu-gcc
ln -s /usr/bin/x86_64-linux-gnu-gcc-4.4 /usr/bin/x86_64-linux-gnu-gcc
安装C++(G ++)4.4 :
apt-get install c++-4.4
更新符号链接使用4.4(具体拱链路将是在32位VM不同):
rm /usr/bin/cpp
ln -s /usr/bin/cpp-4.4 /usr/bin/cpp
rm /usr/bin/x86_64-linux-gnu-cpp
ln -s /usr/bin/x86_64-linux-gnu-cpp-4.4 /usr/bin/x86_64-linux-gnu-cpp
rm /usr/bin/g++
ln -s /usr/bin/g++-4.4 /usr/bin/g++
rm /usr/bin/x86_64-linux-gnu-g++
ln -s /usr/bin/x86_64-linux-gnu-g++-4.4 /usr/bin/x86_64-linux-gnu-g++
验证默认版本:
gcc --version
c++ --version
cpp --version
gcc --version
您现在可以运行以前一样(你只需要重新编译Linux二进制)该版本相同的方式。二进制文件现在将与许多Linux发行版的稍旧版本(包括CentOS兼容性)兼容。这些4.4编译的二进制文件仍然可以在4.6编译版本运行的任何地方工作。
特别感谢this blog为我指出了正确的方向,并给了我上面详述的大部分。
请通过像GoogleDocs等文件共享服务共享树莓pi的xuggler的编译的二进制文件,这将是一个巨大的帮助从你身边。 –
你可以下载我在Raspberry Pi上构建的“Magic Xuggler Jar”,并在几个ARM设备上使用:http://goo.gl/9PHwKh – 11101101b
@ 11101101b - 这个帖子也是相关的,如果我需要构建java(jar)版本? – Elist