请移步https://higoge.github.io/,全部下载资料在那个博客都能找到。谢谢。 git
--------------------------------------------------------------------github
前两天Jeremiah偶尔用最新的Cygwin编译了下vlc-0.9.6,好像修改一个错误就编译经过了,很简单,在这大致写一下。
shell
1. 安装最新的Cygwin,图片见附件(pic.rar)。(如何卸载Cygwin或者使用双Cygwin,请看下一篇日志:《Cygwin的卸载与新旧双版本运行》)bootstrap
Cygwin下载:[url]http://www.cygwin.com/setup.exe[/url]。选择经过网络安装。vim
强烈建议经过Jeremiah提供的本地文件安装:网络
Cygwin-new(20081208)在个人公共邮箱提供了下载,具体下载方式为:
1). 登陆http://mail.qq.com
2). 用户名:jeremiah_vlc
3). 密码:发邮件给我(jeremiah.vlc@gmail.com),我会告知。
4). 在“个人文件夹”的“Jeremiah_VLC相关资源”有全部资料的超大附件链接。curl
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
Web
curl
wgetide
2. 下载源码和库:ui
源码:[url]http://download.videolan.org/pub/videolan/vlc/0.9.6/vlc-0.9.6.tar.bz2[/url]url
库:http://www.namipan.com/downfile/contrib-20081021-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2/7691f26e0285d472e5642666e3c6cbf94d2bd21d7032ea01
3. 解压源文件到e:/cygwin/home/yourname/。解压库到e:/cygwin/。
删除E:/cygwin/usr/win32/bin/的moc,rcc,uic。
修改vlc-0.9.6/configure.ac,
修改
AM_GNU_GETTEXT_VERSION([0.17])
为
AM_GNU_GETTEXT_VERSION([0.15])
或运行
sed -i 's/AM_GNU_GETTEXT_VERSION(0.17)/AM_GNU_GETTEXT_VERSION(0.15)/g' configure.ac
4. 保存脚本configure-vlc01.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 \
--enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
--enable-avcodec --enable-avformat --enable-swscale \
--enable-faad --enable-flac --enable-theora \
--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
5. 运行./bootstrap && dos2unix ./configure-vlc01.sh && ./configure-vlc01.sh && make。
6. 出错:
_la-vlm.o input/.libs/libvlccore_la-vlmshell.o misc/.libs/libvlccore_la-revision
.o | | /usr/bin/sed -e '/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__
/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //' | sort |
uniq > .libs/libvlccore.exp'
make[4]: *** [libvlccore.la] Error 1
make[4]: Leaving directory `/home/wangwei1/vlc-0.9.6/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/wangwei1/vlc-0.9.6/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/wangwei1/vlc-0.9.6/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/wangwei1/vlc-0.9.6'
make: *** [all] Error 2
打开libtool第144行:
修改
global_symbol_pipe=""
为
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1\\2\\3 \\3/p'"
继续make && make package-win32-base。