X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=INSTALL.win32;h=6ad01e51b52930b34a2028189364f3d6623cd5a1;hb=b02d9f27b3c800884b5b40ade1de9641ed303d41;hp=5bd817c778443c46936a49b9e7750b138ca9172d;hpb=0925e59b790ece071b6c6bc868bca0827c91708b;p=vlc diff --git a/INSTALL.win32 b/INSTALL.win32 index 5bd817c778..6ad01e51b5 100644 --- a/INSTALL.win32 +++ b/INSTALL.win32 @@ -1,5 +1,3 @@ -$Id: INSTALL.win32,v 1.23 2004/02/29 14:35:10 gbazin Exp $ - INSTALL file for the Windows9x/Me/NT4/2k/XP version of the VLC media player @@ -26,42 +24,42 @@ Building VLC from the source code 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 - 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. - NOTE: This is the PREFERED way of building VLC natively (the others + NOTE: This is the PREFERRED way of building VLC natively (the others are not as much tested so expect more difficulties with them). + Read http://wiki.videolan.org/Win32CompileCygwinNew to have a complete HOWTO + +- On GNU/Linux, using the mingw32 cross-compiler. + This method is preferred over all the others. + +UNSUPPORTED METHODS +------------------- - 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...) + (MSYS is a minimal build environment to compile Unixish projects under + windoze. It provides all the common Unix tools like sh, gmake...) 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. - 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 + experiment/play with some basic functionality 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. +You first need to download a GNU/Linux cross-compiler version of mingw32. 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). - - 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 @@ -76,10 +74,10 @@ 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.exe -http://prdownloads.sf.net/mingw/MinGW-3.0.0-rc3.exe +http://prdownloads.sf.net/mingw/MinGW-3.1.0-1.exe http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe -Getting the additionnal libraries +Getting the additional libraries ================================= VLC depends on other libraries to provide some features like ac3 audio decoding @@ -88,16 +86,26 @@ or mpeg4 video decoding, etc... Depending on your needs you will have to compile/install some or all of these external libraries. -They can be found here (source code): -http://download.videolan.org/pub/testing/contrib/ +* They can be found here (source code): + http://download.videolan.org/pub/testing/contrib/ + +* 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-20060330-win32-bin-gcc-3.4.5-only.tar.bz2 + (Check out for more recent versions at the same location). + + 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-20060330-win32-bin-gcc-3.4.5-only.tar.bz2 -C / -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-20040229-win32-bin-gcc3.3.1-only.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-20040229-win32-bin-gcc3.3.1-only.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/ @@ -108,107 +116,100 @@ 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 && \ + 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=i586-mingw32msvc-gcc CXX=i586-mingw32msvc-g++ \ ./configure --host=i586-mingw32msvc --build=i386-linux \ - --disable-sdl --disable-gtk \ - --enable-nls \ + --disable-gtk \ + --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \ --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \ - --enable-faad \ - --enable-flac \ - --enable-theora \ + --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \ --with-wx-config-path=/usr/win32/bin \ --with-freetype-config-path=/usr/win32/bin \ --with-fribidi-config-path=/usr/win32/bin \ - --enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \ + --enable-live555 --with-live555-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 \ - --disable-cddax --disable-vcdx \ + --disable-cddax --disable-vcdx --enable-goom \ + --enable-twolame --enable-dvdread \ --enable-debug -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 \ - --disable-sdl --disable-gtk \ - --enable-nls \ - --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \ - --enable-faad \ - --enable-flac \ - --enable-theora \ - --with-wx-config-path=/usr/win32/bin \ - --with-freetype-config-path=/usr/win32/bin \ - --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 \ - --disable-cddax --disable-vcdx \ - --enable-debug +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: -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 && \ + PATH=/usr/win32/bin:$PATH \ + PKG_CONFIG_PATH=/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 \ - --disable-sdl --disable-gtk \ - --enable-nls \ + --disable-gtk \ + --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \ --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \ - --enable-faad \ - --enable-flac \ - --enable-theora \ + --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \ --with-wx-config-path=/usr/win32/bin \ --with-freetype-config-path=/usr/win32/bin \ --with-fribidi-config-path=/usr/win32/bin \ - --enable-livedotcom --with-livedotcom-tree=/usr/win32/live.com \ + --enable-live555 --with-live555-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 \ - --disable-cddax --disable-vcdx \ + --disable-cddax --disable-vcdx --enable-goom \ + --enable-twolame --enable-dvdread \ --enable-debug If you want to use the emulation layer, then just omit the CC="gcc -mno-cygwin" -CXX="g++ -mno-cygwin" line. +CXX="g++ -mno-cygwin" line. You're on your own though. If you are compiling with MSYS/MINGW, then you can use something along those lines: ./bootstrap && \ + PKG_CONFIG_PATH=/usr/win32/lib/pkgconfig \ + PATH=/usr/win32/bin:$PATH \ CPPFLAGS="-I/usr/win32/include -I/usr/win32/include/ebml" \ LDFLAGS=-L/usr/win32/lib \ ./configure \ - --disable-sdl --disable-gtk \ - --enable-nls \ + --disable-gtk \ + --enable-nls --enable-sdl --with-sdl-config-path=/usr/win32/bin \ --enable-ffmpeg --with-ffmpeg-mp3lame --with-ffmpeg-faac \ - --enable-faad \ - --enable-flac \ - --enable-theora \ + --with-ffmpeg-zlib --enable-faad --enable-flac --enable-theora \ --with-wx-config-path=/usr/win32/bin \ --with-freetype-config-path=/usr/win32/bin \ --with-fribidi-config-path=/usr/win32/bin \ --enable-caca --with-caca-config-path=/usr/win32/bin \ --with-xml2-config-path=/usr/win32/bin \ --with-dvdnav-config-path=/usr/win32/bin \ - --disable-cddax --disable-vcdx \ + --disable-cddax --disable-vcdx --enable-goom \ + --enable-twolame --enable-dvdread \ --disable-mkv \ --enable-debug +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-live555\ + --enable-debug + + See `./configure --help' for more information. Actually Compiling the VLC source @@ -216,8 +217,20 @@ Actually Compiling the VLC source Once configured, to build VLC, just run `make'. -( If you are using our gcc-3.3.1 cross-compiler you'll need to use: - PATH=/usr/local/mingw/bin:$PATH 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-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. Well done, now you're ready to use VLC! =======================================