Difference between revisions of "Win32Compile"
Line 62: | Line 62: | ||
== Configuring the build == | == Configuring the build == | ||
+ | === Bootstrap === | ||
First of all, prepare the tree: | First of all, prepare the tree: | ||
$ ./bootstrap | $ ./bootstrap | ||
+ | |||
+ | === Configure === | ||
Once you've got all the files you need in place, you need to configure the build with the <code>./configure</code> script. | Once you've got all the files you need in place, you need to configure the build with the <code>./configure</code> script. | ||
+ | |||
+ | $ mkdir win32 | ||
+ | $ cd win32 | ||
Good configure examples can be found in some files (in [http://git.videolan.org/gitweb.cgi?p=vlc.git;a=tree git]). | Good configure examples can be found in some files (in [http://git.videolan.org/gitweb.cgi?p=vlc.git;a=tree git]). | ||
− | + | $ ../extras/package/win32/configure.sh --with-contrib=/usr/win32 --host=i586-mingw32msvc | |
− | |||
or just run configure manually, like | or just run configure manually, like | ||
− | + | $ ../configure --with-contrib=/usr/win32 --host=i586-mingw32msvc | |
− | See <code>'./configure --help'</code> for more information. | + | See <code>'../configure --help'</code> for more information. |
== Building VLC == | == Building VLC == |
Revision as of 23:15, 2 December 2011
How to compile VLC for Windows
Contents
Building Methods
If you want to build VLC from source, you have several choices:
Method | Documentation | Notes |
---|---|---|
Cross-compile with Mingw on Linux | This page | Preferred method (uses cross compilation). On Windows, you should do it in a virtual machine. Note: read Win32CompileFedora13 if building on Fedora 13 |
Native compilation with MSYS+MINGW | Win32CompileMSYSNew | Native compilation method. MSYS is a minimal build environment to compile Unixish projects under Microsoft Windows. |
Native compilation with cygwin | Win32CompileCygwinNew | Build using cygwin as your compile environment. Error prone, and slow. |
Obtaining the toolchain
Each build method requires its own toolchain:
Method | Notes |
---|---|
Cross-compile with mingw32 on GNU/Linux |
|
Native-compile with MSYS+MINGW | Read the documentation |
Native-compile with Cygwin | Read the documentation |
Get the source code
$ git clone git://git.videolan.org/vlc.git
Prepare3rd party libraries
Before compiling VLC, you need lots of other libraries. Here is how to get them:
$ cd contrib $ mkdir -p win32 && cd win32 $ ../bootstrap --host=i586-mingw32-msvc $ make prebuilt
Configuring the build
Bootstrap
First of all, prepare the tree:
$ ./bootstrap
Configure
Once you've got all the files you need in place, you need to configure the build with the ./configure
script.
$ mkdir win32 $ cd win32
Good configure examples can be found in some files (in git).
$ ../extras/package/win32/configure.sh --with-contrib=/usr/win32 --host=i586-mingw32msvc
or just run configure manually, like
$ ../configure --with-contrib=/usr/win32 --host=i586-mingw32msvc
See '../configure --help'
for more information.
Building VLC
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:
Command | Description |
---|---|
make package-win32-strip (might be package-win-strip)
|
Creates a subdirectory named vlc-x.x.x with all the binaries 'stripped' (that is, smallest size, unusable with a debugger)
|
make package-win32-7zip
|
Same as above but will package the directory in a 7z file. |
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 must have NSIS installed in its default location for this to work. |
Well done—you're ready to use VLC!