INSTALL.win32 10.4 KB
Newer Older
1
$Id$
Gildas Bazin's avatar
 
Gildas Bazin committed
2

Gildas Bazin's avatar
 
Gildas Bazin committed
3
INSTALL file for the Windows9x/Me/NT4/2k/XP version of the VLC media player
4 5 6 7


Running VLC
===========
Gildas Bazin's avatar
 
Gildas Bazin committed
8

9
If you have already built VLC (see below) or are using a binary release,
Gildas Bazin's avatar
 
Gildas Bazin committed
10 11
just run 'vlc.exe'.

12
You can also run VLC from a dos command box, in which case you'll be able
Gildas Bazin's avatar
 
Gildas Bazin committed
13
to use the command line arguments. You can obtain a list of these command
Gildas Bazin's avatar
 
Gildas Bazin committed
14 15
line arguments by typing 'vlc --help' or 'vlc --help --advanced'.

16
To store a debug log of the current VLC session, you can use
Gildas Bazin's avatar
 
Gildas Bazin committed
17 18
'vlc -vv --extraintf=logger'. You will end-up with a vlc-log.txt file in
your current directory.
Gildas Bazin's avatar
 
Gildas Bazin committed
19

Gildas Bazin's avatar
 
Gildas Bazin committed
20 21 22
Additional documentation is available at http://www.videolan.org/doc/


23 24
Building VLC from the source code
=================================
Gildas Bazin's avatar
 
Gildas Bazin committed
25

Gildas Bazin's avatar
 
Gildas Bazin committed
26 27 28
If you want to build VLC from sources, you can do it in several ways:

- natively on Windows, using cygwin (www.cygwin.com) with or without the
29
  POSIX emulation layer. This is the preferred way to compile vlc if you want
Gildas Bazin's avatar
 
Gildas Bazin committed
30
  to do it on Windows.
31
  NOTE: This is the PREFERRED way of building VLC natively (the others
Gildas Bazin's avatar
 
Gildas Bazin committed
32
  are not as much tested so expect more difficulties with them).
Gildas Bazin's avatar
 
Gildas Bazin committed
33 34

- natively on Windows, using MSYS+MINGW (www.mingw.org)
35
  (MSYS is a minimal build environment to compile Unixish projects under
36
  windoze. It provides all the common Unix tools like sh, gmake...)
37 38
  Please note that the gettext utilities are not included in the default
  MSYS/MINGW packages so you won't be able to build VLC with i18n support.
Gildas Bazin's avatar
 
Gildas Bazin committed
39

Gildas Bazin's avatar
 
Gildas Bazin committed
40 41
- 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
42
  experiment/play with some basic functionality in vlc. The reason for this
Gildas Bazin's avatar
 
Gildas Bazin committed
43 44
  is that vlc depends on a lot of 3rd party libraries and building them in
  MSVC is not convenient and sometimes even impossible.
Gildas Bazin's avatar
 
Gildas Bazin committed
45 46 47
  ( 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() )
Gildas Bazin's avatar
 
Gildas Bazin committed
48

49
- or on GNU/Linux, using the mingw32 cross-compiler.
Gildas Bazin's avatar
 
Gildas Bazin committed
50

Gildas Bazin's avatar
 
Gildas Bazin committed
51 52
Getting the right compiler tools
================================
Gildas Bazin's avatar
 
Gildas Bazin committed
53 54

- cross-compiling with mingw32:
55
You first need to download a GNU/Linux cross-compiler version of mingw32.
Gildas Bazin's avatar
 
Gildas Bazin committed
56 57 58 59 60 61 62 63

For Debian GNU/Linux users, you can use the mingw32, mingw32-binutils and
mingw32-runtime packages.

Or you can use our mingw32 gcc-3.3.1 cross-compiler package:
http://www.videolan.org/pub/testing/win32/mingw-gcc3.3.1-linux-crosscompiler.tar.bz2 (requires libc6 >= 2.3.2).
You will need to extract this package in your root directory (everything will
be extracted in /usr/local/cross-tools).
Gildas Bazin's avatar
 
Gildas Bazin committed
64

Gildas Bazin's avatar
 
Gildas Bazin committed
65 66 67
- 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
68
gcc-g++, gcc-mingw, mingw-runtime and win32-api packages.
Gildas Bazin's avatar
 
Gildas Bazin committed
69

Gildas Bazin's avatar
 
Gildas Bazin committed
70
- compiling natively on Windoze with MSYS+MINGW:
Gildas Bazin's avatar
 
Gildas Bazin committed
71
You will need to download and install the latest MSYS, MSYS-DTK and MINGW.
Gildas Bazin's avatar
 
Gildas Bazin committed
72 73 74 75 76 77
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
78
http://prdownloads.sf.net/mingw/MSYS-1.0.9.exe
79
http://prdownloads.sf.net/mingw/MinGW-3.1.0-1.exe
Gildas Bazin's avatar
 
Gildas Bazin committed
80
http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe
Gildas Bazin's avatar
 
Gildas Bazin committed
81

82
Getting the additional libraries
Gildas Bazin's avatar
 
Gildas Bazin committed
83
=================================
Gildas Bazin's avatar
 
Gildas Bazin committed
84

Gildas Bazin's avatar
 
Gildas Bazin committed
85 86
VLC depends on other libraries to provide some features like ac3 audio decoding
or mpeg4 video decoding, etc...
Gildas Bazin's avatar
 
Gildas Bazin committed
87

Gildas Bazin's avatar
 
Gildas Bazin committed
88 89
Depending on your needs you will have to compile/install some or all of these
external libraries.
Gildas Bazin's avatar
 
Gildas Bazin committed
90

91 92
* They can be found here (source code):
  http://download.videolan.org/pub/testing/contrib/
Gildas Bazin's avatar
 
Gildas Bazin committed
93

94 95 96 97
* 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-20040902-win32-bin-gcc3.3.1-only.tar.bz2 (Check out fo more recent versions at the same location). 
98

99 100 101
  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: 
102

103
    tar xjvf contrib-20040902-win32-bin-gcc3.3.1-only.tar.bz2 -C /
104

105 106 107 108 109
  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.
Gildas Bazin's avatar
 
Gildas Bazin committed
110 111 112

A complete list of the libraries on which we depend can be found here:
http://developers.videolan.org/vlc/
Gildas Bazin's avatar
 
Gildas Bazin committed
113

Gildas Bazin's avatar
 
Gildas Bazin committed
114 115 116
Configuring the build
=====================

Gildas Bazin's avatar
 
Gildas Bazin committed
117 118
Once you've got all the files you need in place, you need to configure the
build with the `./configure' script.
Gildas Bazin's avatar
 
Gildas Bazin committed
119

Gildas Bazin's avatar
 
Gildas Bazin committed
120 121
I'll assume that you are using the pre-compiled 3rd party libraries I'm
providing and that they are in /usr/win32.
Gildas Bazin's avatar
 
Gildas Bazin committed
122 123 124 125

If you are cross-compiling from Debian, you can use something
along those lines:

Gildas Bazin's avatar
 
Gildas Bazin committed
126
  ./bootstrap && \
127 128
  CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \
  LDFLAGS=-L/usr/win32/lib \
Gildas Bazin's avatar
 
Gildas Bazin committed
129
  CC=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \
Gildas Bazin's avatar
 
Gildas Bazin committed
130
  ./configure --host=i586-mingw32msvc --build=i386-linux \
131
      --disable-gtk \
132
      --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
133
      --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \
134
      --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \
Gildas Bazin's avatar
 
Gildas Bazin committed
135 136
      --with-wx-config-path=/usr/win32/bin \
      --with-freetype-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
137 138 139 140 141
      --with-fribidi-config-path=/usr/win32/bin \
      --enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \
      --enable-caca --with-caca-config-path=/usr/win32/bin \
      --with-xml2-config-path=/usr/win32/bin \
      --with-dvdnav-config-path=/usr/win32/bin \
Gildas Bazin's avatar
Gildas Bazin committed
142
      --disable-cddax --disable-vcdx --enable-goom \
143
      --enable-twolame --enable-dvdread \
Gildas Bazin's avatar
 
Gildas Bazin committed
144
      --enable-debug
Gildas Bazin's avatar
 
Gildas Bazin committed
145

Gildas Bazin's avatar
 
Gildas Bazin committed
146 147 148 149 150 151 152 153 154
If you are cross-compiling with our gcc-3.3.1 package, you can use something
along those lines:

  ./bootstrap && \
  PATH=/usr/local/mingw/bin:$PATH \
  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 \
155
      --disable-gtk \
156
      --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
157
      --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \
158
      --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \
Gildas Bazin's avatar
 
Gildas Bazin committed
159 160 161
      --with-wx-config-path=/usr/win32/bin \
      --with-freetype-config-path=/usr/win32/bin \
      --with-fribidi-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
162 163 164 165
      --enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \
      --enable-caca --with-caca-config-path=/usr/win32/bin \
      --with-xml2-config-path=/usr/win32/bin \
      --with-dvdnav-config-path=/usr/win32/bin \
Gildas Bazin's avatar
Gildas Bazin committed
166
      --disable-cddax --disable-vcdx --enable-goom \
167
      --enable-twolame --enable-dvdread \
Gildas Bazin's avatar
 
Gildas Bazin committed
168
      --enable-debug
Gildas Bazin's avatar
 
Gildas Bazin committed
169

170 171 172 173 174
If you are using cygwin, you can build VLC with or without the POSIX
emulation layer. Without is usually better and with POSIX emulation
hasn't been tested in about a year or so. So to build without the
emulation layer, use something like this:

Gildas Bazin's avatar
 
Gildas Bazin committed
175
  ./bootstrap && \
176 177
  CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \
  LDFLAGS=-L/usr/win32/lib \
Gildas Bazin's avatar
 
Gildas Bazin committed
178
  CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin" \
Gildas Bazin's avatar
 
Gildas Bazin committed
179
  ./configure \
180
      --disable-gtk \
181
      --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
182
      --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \
183
      --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \
Gildas Bazin's avatar
 
Gildas Bazin committed
184 185
      --with-wx-config-path=/usr/win32/bin \
      --with-freetype-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
186
      --with-fribidi-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
187 188 189 190
      --enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \
      --enable-caca --with-caca-config-path=/usr/win32/bin \
      --with-xml2-config-path=/usr/win32/bin \
      --with-dvdnav-config-path=/usr/win32/bin \
Gildas Bazin's avatar
Gildas Bazin committed
191
      --disable-cddax --disable-vcdx --enable-goom \
192
      --enable-twolame --enable-dvdread \
Gildas Bazin's avatar
 
Gildas Bazin committed
193 194
      --enable-debug

Gildas Bazin's avatar
 
Gildas Bazin committed
195
If you want to use the emulation layer, then just omit the CC="gcc -mno-cygwin"
196
CXX="g++ -mno-cygwin" line. You're on your own though.
Gildas Bazin's avatar
 
Gildas Bazin committed
197

Gildas Bazin's avatar
 
Gildas Bazin committed
198 199 200
If you are compiling with MSYS/MINGW, then you can use something along those
lines:
  ./bootstrap && \
201 202
  CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \
  LDFLAGS=-L/usr/win32/lib \
Gildas Bazin's avatar
 
Gildas Bazin committed
203
  ./configure \
204
      --disable-gtk \
205
      --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
206
      --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \
207
      --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \
Gildas Bazin's avatar
 
Gildas Bazin committed
208 209
      --with-wx-config-path=/usr/win32/bin \
      --with-freetype-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
210
      --with-fribidi-config-path=/usr/win32/bin \
Gildas Bazin's avatar
 
Gildas Bazin committed
211 212 213
      --enable-caca --with-caca-config-path=/usr/win32/bin \
      --with-xml2-config-path=/usr/win32/bin \
      --with-dvdnav-config-path=/usr/win32/bin \
Gildas Bazin's avatar
Gildas Bazin committed
214
      --disable-cddax --disable-vcdx --enable-goom \
215
      --enable-twolame --enable-dvdread \
Gildas Bazin's avatar
 
Gildas Bazin committed
216
      --disable-mkv \
Gildas Bazin's avatar
 
Gildas Bazin committed
217
      --enable-debug
Gildas Bazin's avatar
 
Gildas Bazin committed
218

219 220 221 222 223 224 225 226 227 228 229 230 231
If you have used the "extras/contrib" way, you don't need to precise 
the CFLAGS, LDFLAGS and --with-foo-config-path=.
 ./bootstrap && \
  ./configure \
      --disable-gtk \
      --enable-nls --enable-sdl \
      --enable-ffmpeg --enable-faad --enable-flac --enable-theora \
      --disable-cddax --disable-vcdx --enable-goom \
      --enable-twolame --enable-dvdread \
      --enable-mkv --enable-caca \
      --enable-debug


Gildas Bazin's avatar
 
Gildas Bazin committed
232
See `./configure --help' for more information.
Gildas Bazin's avatar
 
Gildas Bazin committed
233

Gildas Bazin's avatar
 
Gildas Bazin committed
234 235
Actually Compiling the VLC source
=================================
Gildas Bazin's avatar
 
Gildas Bazin committed
236

Gildas Bazin's avatar
 
Gildas Bazin committed
237
Once configured, to build VLC, just run `make'.
Gildas Bazin's avatar
 
Gildas Bazin committed
238

Gildas Bazin's avatar
 
Gildas Bazin committed
239 240 241
( If you are using our gcc-3.3.1 cross-compiler you'll need to use:
  PATH=/usr/local/mingw/bin:$PATH make )

242 243 244 245 246 247 248 249 250 251 252 253 254 255 256
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-win32-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.

257
Well done, now you're ready to use VLC!
Sam Hocevar's avatar
 
Sam Hocevar committed
258
=======================================