编译环境:Windows + cygwin
准备工作: cygwin 安装程序 + VLC源代码 + VLC第三方库
步骤:
1. 安装cygwin
安装前请先下载最新的Cygwin ,下载完后开始安装,安装时需要选择安装选项,安装选项如下:
Archive
unzip
zip
Devel
autoconf
automake
binutils
cvs
gcc
gcc-core
gcc-g++
gcc-mingw
gcc-mingw-core
gcc-mingw-g++
gdb
gettext
gettext-devel
git
libiconv
libgcrypt-devel
libtool
make
mingw-runtime
nasm
patchutils
pkg-config
subversion
Editor
vim
Libs
expat
libgcrypt
Utils
ncurses
Web
curl (optional: for building extras/contrib)
wget (optional: for building extras/contrib)
为了避免漏选带来麻烦,我把所有的选项都选上了!
2. 获取VLC源代码
在安装好cygwin后,通过git来获取VLC源代码:
cd /cygdrive/c/VLC (注意,我把cygwin安装在C盘,如果你安装在D盘则改为 /cygdrive/d/VLC,以此类推)
git clone git://git.videolan.org/vlc.git
3. 获取VLC第三方库
contrib-1.0.0.tar.bz2,下载文件保存在C:\VLC\Downloads\下
4. 编译
1) 编译前的准备工作
cd vlc
sed -i 's/AM_GNU_GETTEXT_VERSION([0.17])/AM_GNU_GETTEXT_VERSION([0.15])/g' configure.ac
./bootstrap
cd /cygdriver/c/VLC/Downloads
tar -xjvf contrib-1.0.0.tar.bz2 -C / (注:如果之前编译过VLC,请先删除把/usr/win32文件夹)
删除/usr/win32/bin下moc、rcc、uic三个文件,注意不要把moc.exe rcc.exe uic.exe删除了
rm /usr/win32/bin/moc -rf
rm /usr/win32/bin/rcc -rf
rm /usr/win32/bin/uic -rf
2)config
将一下保存为 configure-vlc.sh
PATH=/usr/win32/bin:$PATH \
PKG_CONFIG_LIBDIR=/usr/win32/lib/pkgconfig \
CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \
LDFLAGS=-L/usr/win32/lib \
CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin" \
./configure \
--host=i686-pc-mingw32 \
--disable-gtk \
--enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
--enable-avcodec --enable-avformat --enable-swscale \
--enable-faad --enable-flac --enable-theora \
--with-wx-config-path=/usr/win32/bin \
--with-freetype-config-path=/usr/win32/bin \
--with-fribidi-config-path=/usr/win32/bin \
--enable-live555 --with-live555-tree=/usr/win32/live.com \
--enable-caca --with-caca-config-path=/usr/win32/bin \
--with-xml2-config-path=/usr/win32/bin \
--with-dvdnav-config-path=/usr/win32/bin \
--disable-cddax --disable-vcdx --enable-goom \
--enable-twolame --enable-dvdread \
--enable-debug --enable-dca \
--disable-mkv --disable-taglib --disable-zvbi \
--enable-qt4
执行dos2unix configure-vlc.sh
chmod 777 configure-vlc.sh
./configure-vlc.sh
3)编译VLC
cd vlc
修改libtool文件中 global_symbol_pipe=""改为:
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\( "
make(如果为多处理器执行make -j2)
4. 生成软件包
make package-win32-base
这样在vlc目录下有个vlc-1.0.0-git文件夹,但得到的VLC.exe运行时会提示没有权限,执行如下命令:
chmod 755 vlc.exe vlc.exe.manifest
That's all!
官网参考: VLC_WindowsCompile & VLC_WindowsCOmpileNew
阅读(1593) | 评论(0) | 转发(0) |