windows平台下vlc编译之一:编译环境构建(2008.12.03更新)
請移步https://higoge.github.io/,所有下載資料在那個博客都能找到。謝謝。?
--------------------------------------------------------------------
??? Jeremiah剛剛工作幾個月,參與的第一個項目是與視頻監控有關,分配給我的任務就是用開源的vlc做一個自己的播放器。
??? 對于開源項目來說,搭建起編譯環境是第一步也是最重要的一步。Jeremiah在歷經5天的痛苦折磨,google出了n多網頁,其中還包括一個德語的網頁和韓語的網頁,終于編譯通過了vlc0.8.6d。百度到的ChinaUnix的一個網頁上面說:編譯vlc感覺就像被...,Jeremiah深有體會啊。不過編譯成功,還是小興奮了一下。啊哈哈~!有些自虐傾向。
??? 在網上查到一個vlc的qq群:49846130。里面人快滿了,不知道什么時候開個二群。有興趣的可以加一下,大家共同交流。
??? 廢話不多說了,步入正題。
??? 在windows下編譯vlc需要使用仿真Linux環境Cygwin或者Msys+MingW,據說差不多。但是Jeremiah沒有用過后者,所以在這只介紹Cygwin環境。
?
??? 編譯之前的說明:由于最近Cygwin更新了庫文件,導致出現了一些新的無法通過編譯的錯誤。Jeremiah將自己的應用的Cygwin-old的庫文件在我的公共郵箱提供了下載,具體下載方式為:
1). 登錄http://mail.qq.com
2). 用戶名:jeremiah_vlc
3). 密碼:發郵件給我(jeremiah.vlc@gmail.com),我會告知。
4). 在“我的文件夾”的“Jeremiah_VLC相關資源”有所有資料的超大附件連接。
?
??? 編譯第一步:去下載Cygwin。給個網址:[url]http://www.cygwin.com/setup.exe[/url](用我上面提供的,選擇從本地安裝)
?
??? 編譯第二步:安裝Cygwin。Cygwin需要安裝到某個盤的根路徑。然后要找個源下載相應的庫,[url]http://www.cygwin.cn/pub[/url]相對比較快, [url]ftp://ftp.sjtu.edu.cn/cygwin/[/url]作為參考。(如果用的本地的庫文件,就不用寫這一項)然后就需要安裝其他庫來支持vlc的編譯了。目錄如下:
Archive
????unzip (5.52-2)
????zip (2.32-2)
Devel
????autoconf (4-1 2.13-3 2.61-1)
????automake (2-1 1.10-1 1.4p6-4 1.5-2 1.63-3 1.7.9-3 1.8.5-3 1.9.6-2)
????binutils (20080624)
????cvs (1.11.22-1)
????gcc (3.4.4-3)
????gcc-core (3.4.4-3)
????gcc-g++ (3.4.4-3)
????gcc-mingw (20040810-1)
????gcc-mingw-core (20050522-1)
????gcc-mingw-g++ (20050522-1)
????gdb (6.8-2)
????gettext (0.15-1)
????gettext-devel (0.15-1)
????git (1.6.0.2-1)
????libiconv (1.11-1)
????libgcrypt-devel (1.41-4)
????libtool (1.5.27a-1)
????make (3.81-2)
????mingw-runtime (3.15.1-1)?
????nasm (2.02-1)
????patchutils (0.2.31-2)
????pkg-config (0.23a-2)
????subversion (1.5.2-1)
Editor
????vim (7.2-3)
Libs
????expat (2.0.1-1)
????libgcrypt (1.4.1-4)
Web
????curl (optional: for building extras/contrib) (7.16.3-1)
????wget (optional: for building extras/contrib) (1.11.3-1)
經過比較漫長的下載過程,Cygwin就算安裝好了。建議將下載下來的文件(位于安裝文件同目錄)保留下來,下次安裝的時候直接從文件安裝就不用到網上下載了。
??? 第一次運行Cygwin,如果沒有產生下列代碼:
Copying skeleton files.
These files are for the user to personalise
their cygwin experience.
These will never be overwritten.
`./.bashrc' -> `/home/wangwei1//.bashrc'
`./.bash_profile' -> `/home/wangwei1//.bash_profile'
`./.inputrc' -> `/home/wangwei1//.inputrc'
??? 則表示windows用戶沒有添加到Cygwin中,運行以下兩條命令添加用戶:
mkpasswd -l [-d] > /etc/passwd
mkgroup -l [-d] > /etc/group
??? 其中-d可選,如果你在域中,需要用加入'-d 域名'。
??? 重新開啟Cygwin,在根目錄'/'下就會生成/home/yourname的文件夾。
?
??? 編譯第三步:下載源碼及第三方庫。vlc的所有的源碼(*.tar.gz,*.tar.bz2)及編譯好的綠色版(win32/*.zip),安裝版(win32/*.exe)都可以在這里下載:[url]http://download.videolan.org/pub/videolan/vlc/[/url]。Cygwin下編譯vlc最關鍵的就是源碼和第三方庫要相匹配,Jeremiah之所以編譯了5天,經歷了n多痛苦的過程,就是因為沒有匹配好源碼和第三方庫,導致了大量的錯誤。上面網址里面的vlc的版本很多,相對穩定的是vlc-0.8.6*版本,推薦0.8.6i,匹配的contrib為:[url]http://download.videolan.org/pub/testing/win32/contrib-20070530-win32-bin-gcc-3.4.5-only.tar.bz2[/url]。Jeremiah寫這篇博客的時候最新的發行版是vlc-0.9.6,其實1.0.0已經在測試了,只是沒有正式發布而已([url]http://nightlies.videolan.org/[/url]),vlc各個版本的更新日志參考:[url]http://www.videolan.org/developers/vlc/NEWS[/url]。但是Jeremiah沒有編譯成功vlc-0.9.6,0.9.*版本推薦0.9.4,匹配的contib為:contrib-20080811-win32-bin-gcc-4.2.1-sjlj-runtime-3.13-only.tar.bz2。
??? Jeremiah將在未來幾篇博客中詳細介紹編譯0.8.6i和0.9.4。
?
參考網址:
1. [url]http://rogerfd.cn/?p=127[/url]
2. [url]http://www.onlyblog.com/blog2/zyjzyj2000/10242.html[/url]
3. [url]http://wiki.videolan.org/Win32CompileCygwinNew[/url]
轉載于:https://blog.51cto.com/jeremiah/114190
總結
以上是生活随笔為你收集整理的windows平台下vlc编译之一:编译环境构建(2008.12.03更新)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javascript调用在有母版的页面中
- 下一篇: 安装windows 2003 R2额外域