windows平臺下vlc編譯之六:vlc-0.9.8a的編譯

請移步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。搞定!

相關文章
相關標籤/搜索