請移步https://higoge.github.io/,全部下載資料在那個博客都能找到。謝謝。 git
--------------------------------------------------------------------github
首先感謝vlc的qq羣*阿來*幫忙解決了一個關鍵問題。
bootstrap
vlc用Cygwin編譯總是會出這樣那樣的問題,因此編譯起來是至關至關的鬱悶。vlc-0.9.6版的官方提供的版本會有幾個嚴重的缺陷,在官方網站上面已經鄭重道歉了。vlc-0.9.8a是目前發行的最新版,因此對其編譯是勢在必行的。windows
廢話了這麼多,進入正題。簡單寫一下,若是有不明白的,看看前面幾篇日誌。ide
1. 編譯環境,目前最新的Cygwin。(《windows平臺下vlc編譯之五:vlc-0.9.6的編譯》提供下載地址)網站
2. 源碼和庫:url
源碼:[url]http://download.videolan.org/pub/videolan/vlc/0.9.8a/vlc-0.9.8a.tar.bz2[/url]spa
庫:contrib-20081021-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2debug
(日誌
在個人公共郵箱提供了下載,具體下載方式爲:
1). 登陸http://mail.qq.com
2). 用戶名:jeremiah_vlc
3). 密碼:發郵件給我(jeremiah.vlc@gmail.com),我會告知。
4). 在「個人文件夾」的「Jeremiah_VLC相關資源」有全部資料的超大附件鏈接。
)
3. 執行
sed -i 's/AM_GNU_GETTEXT_VERSION(0.17)/AM_GNU_GETTEXT_VERSION(0.15)/g' configure.ac
./bootstrap
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-freetype \
--enable-fribidi \
--enable-live555 --with-live555-tree=/usr/win32/live.com \
--enable-caca --with-caca-config-path=/usr/win32/bin \
--with--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-mozilla --with-mozilla-sdk-path=/usr/win32/gecko-sdk
5. 執行./configure-vlc01.sh
6. 執行make前改兩個文件。(行數可能不對,用搜索功能吧)
libtool第156行:
修改
global_symbol_pipe=""
爲
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1\\2\\3 \\3/p'"
Makefile.am第695行
修改
cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/"
爲
# cp "$(top_srcdir)/extras/package/win32/vlc.exe.manifest" "$(win32_destdir)/"
Makefile.am第725行:
cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_des
tdir)/mozilla/
爲
# cp $(top_srcdir)/projects/mozilla/npvlc.dll.manifest $(win32_des
tdir)/mozilla/
Makefile.am第736行
修改
cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/
爲
# cp $(top_srcdir)/projects/activex/axvlc.dll.manifest $(win32_destdir)/activex/
7. 執行make && make package-win32-base。搞定!