一、 开发环境搭建
1.准备工作
安装文本编辑工具notepad++
安装解压工具7-zip
thunder://QUFodHRwOi8veGlhemFpLnpvbC5jb20uY24vZG93bi5waHA/c29mdGlkPTEwOTY3NyZzdWJjYXRpZD01OCZzaXRlPTEwWlo=
2. 安装MinGW
2.1 TDM / MinGW的安装
安装向导:
取消选择"Checkfor updatedfiles..."
选择“Create”
安装到C:\MinGW
保持默认设置
事后检查 C:\MinGW\bin是否被添加到Windows的环境变量中,如果没有,请自己添加。
2.2 MinGW-utils的安装
下载并安装MinGW - utils:http://cdnetworks-kr-2.dl.sourceforge.net/project/mingw/MinGW/Extension/mingw-utils/mingw-utils-0.3/mingw-utils-0.3.tar.gz
提取内容到C:\ MinGW
3. MSys
3.1 MSYS的安装
可以点击以下链接下载并安装:http://cdnetworks-kr-2.dl.sourceforge.net/project/mingw/MSYS/Base/msys-core/msys-1.0.11/MSYS-1.0.11.exe
通过安装向导,并默认安装到 C:\Msys\1.0
在自动弹出的命令窗口中,回答如下问题:
Accept Post Install: [y]
MinGW Installed?: [y]
path toMinGW: [c:/MinGW]
3.2 MSys Developer Toolkit(Msys开发工具包)的安装
Ø 可以点击以下链接下载并安装,按照安装向导选择默认安装即可
3.3 AutoToolsand libcrypt(用于更新MSYS安装目录中的文件)
按以下链接下载autoconf,automake, libtool和libcrypt文件的压缩包,并解压到C:\Msys\1.0中:
这里需要特别注意的是解压后的压缩包一般都有bin和share两个文件夹,把文件夹里面的文件拷到C:\Msys\1.0相应的文件夹即可,不要把整个文件夹替代C:\Msys\1.0中的文件夹。如autoconf-2.63-1-msys-1.0.11-bin.tar解压后有bin文件夹,只需要把bin文件夹里文件复制到C:\msys\1.0\bin里即可。
3.4 Glib and PKG-CONFIG
跟上面类似,下载以下文件包,解压到C:\Msys\1.0相应文件夹里。
http://ftp.gnome.org/pub/GNOME/binaries/win32/glib
ftp://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip
ftp://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config-dev_0.23-3_win32.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime_0.18.1.1-2_win32.zip
要注意的是第一个链接下载时需选择最新版本,现在最新版是glib 2.28,点击进入2.28文件夹后可以看到两个链接:
glib-dev_2.28.1-1_win32.zip 19-Feb-2011 13:08 2.7M
glib_2.28.1-1_win32.zip 19-Feb-2011 13:10 2.4M
选择第二个非DEV版即可
3.5 Add pkg config path variable(添加PKG配置路径变量)
添加 set PKG_CONFIG_PATH=/win32/lib/pkgconfig 到 C:\MSys\1.0\msys.bat 第一行。
3.6 更改 libtool 的搜索路径
打开C:\MSys\1.0\bin\中的libtool文件,添加目录 /mingw/lib到9926行“compiler_lib_search_dirs=”的末尾(可以用搜索的办法查找到该行),最后该行的完整内容应该是这样的:
compiler_lib_search_dirs="/usr/lib/usr/lib /bin/../lib/gcc-lib/i686-pc-msys/2.95.3-1 /bin/../lib/gcc-lib/usr/lib/gcc-lib/i686-pc-msys/2.95.3-1/bin/../lib/gcc-lib/i686-pc-msys/2.95.3-1/../../../../i686-pc-msys/lib/usr/lib/gcc-lib/i686-pc-msys/2.95.3-1/../../../../i686-pc-msys/lib /mingw/lib"
4. 安装LUA tools
4.1 LUA工具包
VLC使用Lua编写的脚本语言,但官方下载的lua工具包中并没有相应的二进制文件,所以需要重新编译它。
可以从以下地址下载LUA工具包:http://www.lua.org/ftp/lua-5.1.4.tar.gz
解压到以下文件夹:C:\MSys\1.0\home\<username>其中,username为你当前的Windows的用户名。
运行C:\MSys\1.0\msys.bat
键入以下命令:
cd/home/<username>/lua-5.1.4
make mingw
命令运行结束后你可以在src目录中看到以下文件:lua.exe, luac.exe,lua51.dll
用命令的方式将这些文件加入到 /bin目录下:
cd src
cp *.exe /bin
cp *.dll /bin
cd ..
4.2 Precompiled contribs
可以按以下链接下载contribs:http://people.videolan.org/~jb/Contribs/contrib-20111017-win32-bin-gcc-4.4.4-runtime-3.17-only.tar.bz2
或者下载最新的contirb:http://people.videolan.org/~jb/Contribs/
下载后解压,解压后会有一个名为usr的文件夹,然后把里面的子文件夹win32复制到C:\MSys\1.0目录下。最后,win32中的文件libdvdnav.a的绝对路径应该是这样的:
C:\MSys\1.0\win32\lib\libdvdnav.a
5.VLC sources(VLC源文件)
5.1 VLC版本: 1.1.11
下载:http://download.videolan.org/pub/videolan/vlc/1.1.11/vlc-1.1.11.tar.bz2
解压到C:\MSys\1.0\home\<username>
把vlc-1.1.11文件夹重命名为vlc
5.2添加配置文件 configure-msys (1.1.x only)
地址保存到C:\msys\1.0\home\<username>\vlc\extras\package\win32\configure-msys.sh
注意:下载的文件名为extras_package_win32_configure-msys.sh,保存的时候需要改为configure-msys.sh
5.3添加配置文件 configure-common (1.1.x only)
保存到:C:\msys\1.0\home\<username>\vlc\extras\package\win32\configure-common.sh
同上,保存的时候需要将此文件(extras_package_win32_configure-common.sh)命名为configure-common.sh
6. 最后的更改 : whoami and hostname
从以下链接下载http://sourceforge.net/projects/mingw/files/MSYS/Base/coreutils/文件,请选择最新版本,下载后的文件名大概像现在这个样子(coreutils-5.97-2-msys-1.0.11-ext.tar.lzma,注意-ext后缀)。解压后,将who.exe,whoami.exe及hostname.exe复制到C:\Msys\1.0\bin目录下。
从http://sourceforge.net/projects/mingw/files/MSYS/Base/libiconv/处下载libintl动态链接库,文件名大概像(libiconv-1.13.1-2-msys-1.0.13-dll-2.tar.lzma),并解压至C:\Msys\1.0\bin目录下。
从http://sourceforge.net/projects/mingw/files/MSYS/Base/gettext/处下载文件名像libintl-0.17-2-msys-dll-8.tar.lzma的文件,并解压到C:\Msys\1.0\bin目录下。
创建一个新文件,包含如下代码
echo '<username>'
保存为whoami(注意不要任何扩展名),并复制到C:\Msys\1.0\bin目录下。
打开C:\MSys\1.0\home\<username>\vlc\configure.ac文件,搜索VLC_COMPILE_HOST并作修改,以前的是如下样子AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST,"`hostname -f 2> /dev/null || hostname`", [host which ranconfigure])
修改成AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST,"`hostname`", [host which ran configure])
7. pixmaps
为了能编译通过mozilla的项目,需要拷贝一下文件
C:\msys\1.0\home\Bluez\vlc-1.1.12\projects\activex\pixmaps\*.*
到
C:\msys\1.0\home\Bluez\vlc-1.1.12\projects\mozilla\pixmaps\*.*
二、 编译
1.Bootstrap
打开C:\MSys\1.0\msys.bat,运行命令行:
cd vlc
cp -v /usr/win32/share/aclocal/* m4/
cp -v /usr/share/aclocal/* m4/
PATH=/usr/win32/bin:$PATH ./bootstrap
运行成功后会显示:Successfully bootstrapped
2.Configure
sh extras/package/win32/configure-msys.sh
3.Make (compile)
运行命令:
PATH=/usr/win32/bin:$PATH make
如果这一步出错可以采取以下步骤:
返回到步骤4.2,下载最新版本的contrib
在脚本文件configure-msys.sh中添加--disable-upnp
如果没有问题的话编译就正式开始了,这一步花的时间比较长,大概要一两个小时。
make package-win32-base