-$Id: INSTALL.win32,v 1.17 2003/07/06 16:22:15 gbazin Exp $
-
-INSTALL file for the Windows9x/Me/NT4/2k/XP version of the VLC media player
+INSTALL file for the Windows XP/Vista/Seven version of VLC media player
Running VLC
===========
-If you have already built VLC (see below) or are using a binary release,
-just run 'vlc.exe'.
+If you are using a binary release from videolan.org or if you have already built
+VLC (see below), just run 'vlc.exe'.
You can also run VLC from a dos command box, in which case you'll be able
to use the command line arguments. You can obtain a list of these command
line arguments by typing 'vlc --help' or 'vlc --help --advanced'.
To store a debug log of the current VLC session, you can use
-'vlc -vv --extraintf=logger'. You will end-up with a vlc-log.txt file in
+'vlc -vvv --extraintf=logger'. You will end-up with a vlc-log.txt file in
your current directory.
-If you want to play a DVD, run VLC and click on the Disc option in the
-interface. You then have to type your drive letter followed by a colon in
-the 'Device name' box (eg. 'D:' if this is the letter for your dvdrom drive).
-
-Additional documentation is available at http://www.videolan.org/doc/
+Additional documentation is available at http://www.videolan.org/doc/ and http://wiki.videolan.org/.
Building VLC from the source code
If you want to build VLC from sources, you can do it in several ways:
+- On GNU/Linux, using the mingw32 cross-compiler.
+ This method is preferred over all the others.
+
+- natively on Windows, using MSYS+MINGW (www.mingw.org)
+ (MSYS is a minimal build environment to compile Unixish projects under
+ windows. It provides all the common Unix tools like sh, gmake...)
+
+UNSUPPORTED METHODS
+-------------------
- natively on Windows, using cygwin (www.cygwin.com) with or without the
- unix emulation layer. This is the prefered way to compile vlc if you want
+ POSIX emulation layer. This is the preferred way to compile vlc if you want
to do it on Windows.
+ Read http://wiki.videolan.org/Win32CompileCygwinNew to have a complete HOWTO
+
+- natively on Windows, using Microsoft Visual Studio. This will not work.
-- natively on Windows, using MSYS+MINGW (www.mingw.org)
- (MSYS is a minimal build environnement to compile unixish projects under
- windoze. It provides all the common unix tools like sh, gmake...)
- Please note that there is currenlty a bug in MSYS which requires you to
- edit the acgeneral.m4 file and replace the value of ac_max_sed_lines to
- something higher, for instance 976.
-
-- natively on Windows, using Microsoft Visual C++. Even though we provide some
- msvc project files with vlc, this method is advised only if you just want to
- experiment/play with some basic functionnalities in vlc. The reason for this
- is that vlc depends on a lot of 3rd party libraries and building them in
- MSVC is not convenient and sometimes even impossible.
- ( NOTE: if you want to run vlc under the msvc debugger, you need to run it
- with the --fast-mutex --win9x-cv-method=1 options because the debugger
- usually loses signals sent by PulseEvent() )
-
-- or on Linux, using the mingw32 cross-compiler.
Getting the right compiler tools
================================
- cross-compiling with mingw32:
-You first need to download a linux cross-compiler version of mingw32.
-(for Debian GNU/Linux users, you can use the mingw32, mingw32-binutils and
-mingw32-runtime packages)
-
-- compiling natively on Windoze with cygwin:
-You will need to download and run the setup.exe app from cygwin's web site
-(www.cygwin.com). You will also need to make sure you install at least the
-gcc-mingw, mingw-runtime and w32api packages.
-
-- compiling natively on Windoze with MSYS+MINGW:
-You will need to download and install the latest MSYS, MSYS-DTK and MINGW.
-The installation is really easy. Begin with the MSYS auto-installer and once
-this is done, extract MINGW into c:\msys\1.0\mingw. You also have to remember
-to remove the make utility included with MINGW as it conflicts with the one
-from MSYS (just rename or remove c:\msys\1.0\mingw\bin\make.exe).
-
-http://www.mingw.org/download.shtml
-http://prdownloads.sf.net/mingw/MSYS-1.0.9-2003.14.18-1.exe
-http://prdownloads.sf.net/mingw/MinGW-2.0.0-3.exe
-http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe
-
-Getting the additionnal libraries
+You first need to download a GNU/Linux cross-compiler version of mingw32.
+
+For Debian GNU/Linux users, you can use the gcc-mingw32, mingw32-binutils and
+mingw32-runtime packages.
+For Fedora users, you can use mingw-binutils, mingw-gcc-core, mingw-gcc-g++
+
+For MingW and Cygwin, please refer to our Wiki:
+- http://wiki.videolan.org/Win32CompileMSYS
+- http://wiki.videolan.org/Win32CompileCygwin
+
+
+Getting the additional libraries
=================================
-VLC depends on other libraries to provide some features like ac3 audio decoding
-or mpeg4 video decoding, etc...
+VLC depends on many other libraries to provide some features like most of the codecs.
+
+Usually, you don't want to compile those by yourself, so use pre-compiled ones.
+
+* We also provide a package with all the libraries already compiled so it is
+ actually really easy to compile a full-featured version of vlc (these compiled
+ libraries will only work with mingw or cygwin):
+ http://download.videolan.org/pub/testing/win32/contrib-200xxxxx-win32-bin-gcc-x.x.x-only.tar.bz2
+ (Check out for more recent versions at the same location).
-Depending on your needs you will have to compile/install some or all of these
-external libraries.
+ All you need to do is extract it in your root directory (the include files
+ and libraries will be put in /usr/win32). You can do this with the following
+ command:
-They can be found here (source code):
-http://www.videolan.org/pub/testing/contrib/
+ tar xjvf contrib-20060330-win32-bin-gcc-3.4.5-only.tar.bz2 -C /
-I also provide a package with all the libraries already compiled so it is
-actually really easy to compile a full-featured version of vlc (these compiled
-libraries will only work with mingw or cygwin):
-http://www.videolan.org/pub/testing/win32/contrib-20030622-win32-bin.tar.bz2
-All you need to do is extract it in your root directory (the include files
-and libraries will be put in /usr/win32). You can do this with the following
-command: "tar xjvf contrib-20030622-win32-bin.tar.bz2 -C /"
+ Please note the "-C /".
+
+* An automated way of building the contrib libraries is provided in
+ extra/contrib. It will download, configure and build the libraries.
+ See the extras/contrib/README for more info.
-A complete list of the libraries on which we depend can be found here:
-http://developers.videolan.org/vlc/
Configuring the build
=====================
Once you've got all the files you need in place, you need to configure the
build with the `./configure' script.
-I'll assume that you are using the pre-compiled 3rd party libraries I'm
+I'll assume that you are using the pre-compiled 3rd party libraries we are
providing and that they are in /usr/win32.
-If you are cross-compiling from Debian, you can use something
-along those lines:
-
- ./bootstrap && \
- CPPFLAGS=-I/usr/win32/include LDFLAGS=-L/usr/win32/lib \
- CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \
- ./configure --host=i586-mingw32msvc --build=i386-linux \
- --disable-sdl --disable-gtk \
- --with-included-gettext --enable-nls \
- --enable-mad \
- --enable-ffmpeg \
- --enable-dvdread --enable-dvdplay \
- --enable-faad \
- --enable-flac \
- --enable-theora \
- --with-wx-config-path=/usr/win32/bin \
- --with-skins-wx-config-path=/usr/win32/bin \
- --with-freetype-config-path=/usr/win32/bin \
- --enable-debug
-
-If you are using cygwin, you can build VLC with or without the unix emulation
-layer (without is usually better). To build without the emulaion layer, use
-something like this:
- ./bootstrap && \
- CPPFLAGS=-I/usr/win32/include LDFLAGS=-L/usr/win32/lib \
- CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin" \
- ./configure \
- --disable-sdl --disable-gtk \
- --with-included-gettext --enable-nls \
- --enable-mad \
- --enable-ffmpeg \
- --enable-dvdread --enable-dvdplay \
- --enable-faad \
- --enable-flac \
- --enable-theora \
- --with-wx-config-path=/usr/win32/bin \
- --with-skins-wx-config-path=/usr/win32/bin \
- --with-freetype-config-path=/usr/win32/bin \
- --enable-debug
-
-If you want to use the emulation layer, then just omit the CC="gcc -mno-cygwin"
-CXX="g++ -mno-cygwin" line.
-
-If you are compiling with MSYS/MINGW, then you can use something along those
-lines:
- ./bootstrap && \
- CPPFLAGS=-I/usr/win32/include LDFLAGS=-L/usr/win32/lib \
- ./configure \
- --disable-sdl --disable-gtk \
- --with-included-gettext --enable-nls \
- --enable-mad \
- --enable-ffmpeg \
- --enable-dvdread --enable-dvdplay \
- --enable-faad \
- --enable-flac \
- --enable-theora \
- --with-wx-config-path=/usr/win32/bin \
- --with-skins-wx-config-path=/usr/win32/bin \
- --with-freetype-config-path=/usr/win32/bin \
- --enable-debug
+If you are cross-compiling from Debian, you can use this:
+
+ sh extras/package/win32/configure-mingw.sh
+
+
+If you are compiling with MSYS/MINGW, then you can use this:
+
+ sh extras/package/win32/configure-msys.sh
+
+
+If you are using cygwin, you should build VLC without the POSIX emulation layer.
+Use this:
+
+ sh extras/package/win32/configure-cygwin.sh
See `./configure --help' for more information.
+
Actually Compiling the VLC source
=================================
Once configured, to build VLC, just run `make'.
+Once the compilation is done, you can either run VLC directly from the source
+tree or you can build self-contained VLC packages with the following
+'make' rules:
+
+ make package-win-base
+ will create a subdirectory named vlc-x.x.x with all the binaries
+ 'stripped' (ie. without any debugging symbols).
+
+ make package-win32-zip
+ Same as above but will package the directory in a zip file.
+
+ make package-win32
+ Same as above but will also create an auto-installer package. You will need
+ to have NSIS installed in its default location for this to work.
+
Well done, now you're ready to use VLC!
=======================================