Difference between revisions of "Win32Compile"
Jump to navigation
Jump to search
Building Methods
Line 28: | Line 28: | ||
Each build method requires its own toolchain: | Each build method requires its own toolchain: | ||
− | * Debian/Ubuntu users can <code>apt-get install gcc-mingw32 mingw32-binutils</code>. <code></code> | + | * '''Debian/Ubuntu''' users can <code>apt-get install gcc-mingw32 mingw32-binutils</code>. <code></code> |
− | * Gentoo users can <code>emerge crossdev && crossdev mingw32</code> | + | * '''Gentoo''' users can <code>emerge crossdev && crossdev mingw32</code> |
− | * Other systems may attempt http://www.mingw.org/wiki/LinuxCrossMinGW | + | * '''Fedora''' users should read [[Win32CompileFedora13]] |
− | * Native-compile with [http://www.mingw.org MSYS+MINGW], should read the [[Win32CompileMSYSNew|documentation]] | + | * Other '''Linux''' systems may attempt http://www.mingw.org/wiki/LinuxCrossMinGW |
− | * Native-compile with [http://www.cygwin.com Cygwin], should read the [[Win32CompileCygwinNew|documentation]] | + | * Native-compile with '''[http://www.mingw.org MSYS+MINGW]''', should read the [[Win32CompileMSYSNew|documentation]] |
+ | * Native-compile with '''[http://www.cygwin.com Cygwin]''', should read the [[Win32CompileCygwinNew|documentation]] | ||
== Get the source code == | == Get the source code == |
Revision as of 23:28, 2 December 2011
How to compile VLC media player 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. |
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:
- Debian/Ubuntu users can
apt-get install gcc-mingw32 mingw32-binutils
. - Gentoo users can
emerge crossdev && crossdev mingw32
- Fedora users should read Win32CompileFedora13
- Other Linux systems may attempt http://www.mingw.org/wiki/LinuxCrossMinGW
- Native-compile with MSYS+MINGW, should read the documentation
- Native-compile with Cygwin, should read the documentation
Get the source code
$ git clone git://git.videolan.org/vlc.git
Prepare 3rd 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
Go Back
Go back to the VLC source directory:
$ cd ../..
Configuring the build
Bootstrap
First, prepare the tree:
$ ./bootstrap
Configure
Then, you can to configure the build with the ./configure
script.
Create a subfolder:
$ mkdir win32 $ cd win32
Use the standard configure:
$ ../extras/package/win32/configure.sh --with-contrib=/usr/win32 --host=i586-mingw32msvc
or just run configure manually:
$ ../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!