<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.videolan.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SpeederC</id>
	<title>VideoLAN Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.videolan.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=SpeederC"/>
	<link rel="alternate" type="text/html" href="https://wiki.videolan.org/Special:Contributions/SpeederC/"/>
	<updated>2026-11-04T20:57:44Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=Win32CompileMSYS&amp;diff=27282</id>
		<title>Win32CompileMSYS</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=Win32CompileMSYS&amp;diff=27282"/>
		<updated>2014-10-26T12:17:43Z</updated>

		<summary type="html">&lt;p&gt;SpeederC: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction  =&lt;br /&gt;
== About ==&lt;br /&gt;
MSys is a helper environment for MinGW, the compiler chain for Windows based on GCC.&lt;br /&gt;
&lt;br /&gt;
It can build VLC natively on Windows.  Note that you should probably [[Win32Compile|cross compile]] VLC from Linux, because it is faster, and feels easier.&lt;br /&gt;
&lt;br /&gt;
VLC is a complex program with many dependencies, so minimal command-line experience is required. Also, don&#039;t be in a hurry (4 hours is a minimum for the whole process) and don&#039;t despair if it doesn&#039;t work first time.&lt;br /&gt;
&lt;br /&gt;
This howto &#039;&#039;&#039;ONLY&#039;&#039;&#039; works  for VLC &#039;&#039;&#039;2.1.x&#039;&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
Advanced users only: If you want to make your own MSYS environment, please use [[Win32CompileMSYSNew]]. If you don&#039;t understand this message, it is best to ignore this.&lt;br /&gt;
&lt;br /&gt;
= Windows tools =&lt;br /&gt;
== Text editor  ==&lt;br /&gt;
To edit unix-style text documents you need a suitable editor. Notepad is not enough.&lt;br /&gt;
&lt;br /&gt;
* Use [http://sourceforge.net/projects/notepad2/ notepad2]. You can set File - Line endings - Default to &amp;quot;Unix (LF)&amp;quot;, but it always saves opened files in the ending style they have.&lt;br /&gt;
&lt;br /&gt;
* Or use [http://notepad-plus-plus.org/ notepad++].&lt;br /&gt;
&lt;br /&gt;
== Unzip Utility (7-zip) ==&lt;br /&gt;
Files to downloaded will have to be uncompressed. Some of them use Unix originated formats (.tar.gz, .tar.bz2, .tar.lzma), you will then need a versatile unzipping utility. &lt;br /&gt;
&lt;br /&gt;
A recent version of [http://www.7-zip.org/ 7-zip] is therefore strongly advised.&lt;br /&gt;
&lt;br /&gt;
= Prepare GNU on Windows =&lt;br /&gt;
Before installing, ensure your Windows user name does not contain spaces (VLC will not build in a folder with spaces in it). If it does, please create another user on your system. &lt;br /&gt;
&lt;br /&gt;
In the following text, we&#039;ll refer to this user name as &amp;quot;&amp;amp;lt;username&amp;amp;gt;&amp;quot;. Replace it appropriately where needed of course. &lt;br /&gt;
&lt;br /&gt;
== MinGW  ==&lt;br /&gt;
=== TDM/MinGW Setup  ===&lt;br /&gt;
&lt;br /&gt;
Use the installer found at &amp;lt;strike&amp;gt;http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm-gcc-4.7.1-2.exe/download&amp;lt;/strike&amp;gt;http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/Previous/1.1006.0/tdm64-gcc-4.6.1.exe/download&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; For a direct use with 32 bits computer, use the installer found at http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/Previous/1.1006.0/tdm-gcc-4.6.1.exe/download&lt;br /&gt;
&lt;br /&gt;
Go through the wizard: &lt;br /&gt;
* Disable &amp;quot;Check for updated files on the TDM-GCC server&amp;quot;&lt;br /&gt;
* Select &amp;quot;Create&amp;quot; &lt;br /&gt;
* Install to C:\MinGW &lt;br /&gt;
* Keep default settings&lt;br /&gt;
&lt;br /&gt;
== MSys  ==&lt;br /&gt;
Use the MSys package found at http://people.videolan.org/~jb/msys/msys.7z&lt;br /&gt;
&lt;br /&gt;
Un-7zip it to &#039;&#039;&#039;C:\MinGW\msys\&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The build is made exclusively from the command line, so execute &#039;&#039;&#039;C:\MinGW\msys\msys.bat&#039;&#039;&#039;, then type the commands as mentioned.&lt;br /&gt;
&lt;br /&gt;
= Get VLC sources  =&lt;br /&gt;
&lt;br /&gt;
== Git ==&lt;br /&gt;
Clone the git repo&lt;br /&gt;
 cd ~&lt;br /&gt;
 git clone git://git.videolan.org/vlc.git&lt;br /&gt;
&lt;br /&gt;
= Get configuration tools =&lt;br /&gt;
 cd vlc/extras/tools&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
 make m4&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
 export PATH=$PATH:$HOME/vlc/extras/tools/build/bin/&lt;br /&gt;
&lt;br /&gt;
It should build &#039;&#039;autoconf, automake, libtool, pkg-config, cmake, yasm&#039;&#039; and &#039;&#039;ragel&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Ragel compilation can fail with gcc 4.7, ignore it.&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If protobuf compilation fails, manually download https://github.com/google/protobuf/releases/download/v2.6.0/protobuf-2.6.0.tar.bz2, extract it to vlc\extras\tools\protobuf and comment $(UNPACK) and $(MOVE) for protobuf in vlc/extras/tools/tools.mak&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; check that all is well with autoconf --version&lt;br /&gt;
&lt;br /&gt;
= Get precompiled 3rd party libraries =&lt;br /&gt;
 cd vlc/contrib&lt;br /&gt;
 mkdir win32 &amp;amp;&amp;amp; cd win32&lt;br /&gt;
 ../bootstrap --build=i686-w64-mingw32&lt;br /&gt;
 make prebuilt&lt;br /&gt;
 cd ..&lt;br /&gt;
 ln -sf i686-w64-mingw32 mingw32&lt;br /&gt;
&lt;br /&gt;
 export PATH=$PATH:$HOME/vlc/contrib/mingw32/bin/:$HOME/vlc/contrib/mingw32/lib/:$HOME/vlc/contrib/mingw32/include/&lt;br /&gt;
 export PKG_CONFIG_PATH=$HOME/vlc/contrib/mingw32/lib/pkgconfig&lt;br /&gt;
 rm $HOME/vlc/contrib/mingw32/bin/moc $HOME/vlc/contrib/mingw32/bin/uic $HOME/vlc/contrib/mingw32/bin/rcc $HOME/vlc/contrib/mingw32/bin/luac&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; check that all is well with moc -v&lt;br /&gt;
&lt;br /&gt;
= Build VLC  =&lt;br /&gt;
&lt;br /&gt;
== Bootstrap  ==&lt;br /&gt;
In VLC root folder, do:&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
&lt;br /&gt;
== Configure  ==&lt;br /&gt;
 mkdir win32&lt;br /&gt;
 cd win32&lt;br /&gt;
 sh ../extras/package/win32/configure.sh --host=i686-w64-mingw32 --disable-nls&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If you want any custom options, like &amp;quot;--disable-lua&amp;quot; or anything of that nature, you can append them.&lt;br /&gt;
&lt;br /&gt;
== Make (compile) ==&lt;br /&gt;
 make -j4&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If your &amp;amp;lt;username&amp;amp;gt; starts with the &amp;quot;u&amp;quot; or &amp;quot;x&amp;quot; character, change C:\MSys\1.0\home\&amp;amp;lt;username&amp;amp;gt;\config.h and double all backslashes in VLC_COMPILED_BY constant.&lt;br /&gt;
&lt;br /&gt;
= Create packages  =&lt;br /&gt;
&lt;br /&gt;
Once the compilation is done, build self-contained VLC packages with one of the following &amp;quot;make&amp;quot; commands: &lt;br /&gt;
&lt;br /&gt;
 make package-win-common&lt;br /&gt;
&lt;br /&gt;
(This will create a subdirectory named vlc-x.x.x with all the binaries &amp;quot;stripped&amp;quot; without any debugging symbols). &lt;br /&gt;
&lt;br /&gt;
 make package-win32-zip&lt;br /&gt;
&lt;br /&gt;
(Same as above but will package the directory in a zip file). &lt;br /&gt;
&lt;br /&gt;
 make package-win32-exe&lt;br /&gt;
&lt;br /&gt;
(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).&lt;br /&gt;
&lt;br /&gt;
 make package-win32-base-debug&lt;br /&gt;
&lt;br /&gt;
(This will create a subdirectory named vlc-x.x.x with all the binaries containing debug info usable by gdb).&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
&lt;br /&gt;
See [[Win32CompileMSYSTroubleShooting]].&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
This howto was re-created by [[User:J-b|Jean-Baptiste Kempf]] and updated in June 2009, September 2009, December 2009 and March 2010. &lt;br /&gt;
&lt;br /&gt;
It was updated in June 2010 by Vicne with the help of J-b, gnosygnu and MichaelMc&lt;br /&gt;
&lt;br /&gt;
It was updated in July 2012 by gnosygnu. Note that there are several new notes in [[Win32CompileMSYSTroubleShooting]]. These reflect problems that were encountered on gnosygnu&#039;s setup (Windows XP SP3). Refer to this [http://forum.videolan.org/viewtopic.php?f=32&amp;amp;t=102843&amp;amp;sid=f58967215a83981dda030ff6efa3d493 forum thread] for more information.&lt;br /&gt;
&lt;br /&gt;
This howto was re-re-created by [[User:J-b|Jean-Baptiste Kempf]] in September 2012.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
*[[Win32CompileMSYSOld]] - deprecated documentation&lt;br /&gt;
&lt;br /&gt;
[[Category:Building]]&lt;/div&gt;</summary>
		<author><name>SpeederC</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=Win32CompileMSYS&amp;diff=27277</id>
		<title>Win32CompileMSYS</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=Win32CompileMSYS&amp;diff=27277"/>
		<updated>2014-10-25T17:24:02Z</updated>

		<summary type="html">&lt;p&gt;SpeederC: Few adds after a test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction  =&lt;br /&gt;
== About ==&lt;br /&gt;
MSys is a helper environment for MinGW, the compiler chain for Windows based on GCC.&lt;br /&gt;
&lt;br /&gt;
It can build VLC natively on Windows.  Note that you should probably [[Win32Compile|cross compile]] VLC from Linux, because it is faster, and feels easier.&lt;br /&gt;
&lt;br /&gt;
VLC is a complex program with many dependencies, so minimal command-line experience is required. Also, don&#039;t be in a hurry (4 hours is a minimum for the whole process) and don&#039;t despair if it doesn&#039;t work first time.&lt;br /&gt;
&lt;br /&gt;
This howto &#039;&#039;&#039;ONLY&#039;&#039;&#039; works  for VLC &#039;&#039;&#039;2.1.x&#039;&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
Advanced users only: If you want to make your own MSYS environment, please use [[Win32CompileMSYSNew]]. If you don&#039;t understand this message, it is best to ignore this.&lt;br /&gt;
&lt;br /&gt;
= Windows tools =&lt;br /&gt;
== Text editor  ==&lt;br /&gt;
To edit unix-style text documents you need a suitable editor. Notepad is not enough.&lt;br /&gt;
&lt;br /&gt;
* Use [http://sourceforge.net/projects/notepad2/ notepad2]. You can set File - Line endings - Default to &amp;quot;Unix (LF)&amp;quot;, but it always saves opened files in the ending style they have.&lt;br /&gt;
&lt;br /&gt;
* Or use [http://notepad-plus-plus.org/ notepad++].&lt;br /&gt;
&lt;br /&gt;
== Unzip Utility (7-zip) ==&lt;br /&gt;
Files to downloaded will have to be uncompressed. Some of them use Unix originated formats (.tar.gz, .tar.bz2, .tar.lzma), you will then need a versatile unzipping utility. &lt;br /&gt;
&lt;br /&gt;
A recent version of [http://www.7-zip.org/ 7-zip] is therefore strongly advised.&lt;br /&gt;
&lt;br /&gt;
= Prepare GNU on Windows =&lt;br /&gt;
Before installing, ensure your Windows user name does not contain spaces (VLC will not build in a folder with spaces in it). If it does, please create another user on your system. &lt;br /&gt;
&lt;br /&gt;
In the following text, we&#039;ll refer to this user name as &amp;quot;&amp;amp;lt;username&amp;amp;gt;&amp;quot;. Replace it appropriately where needed of course. &lt;br /&gt;
&lt;br /&gt;
== MinGW  ==&lt;br /&gt;
=== TDM/MinGW Setup  ===&lt;br /&gt;
&lt;br /&gt;
Use the installer found at &amp;lt;strike&amp;gt;http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm-gcc-4.7.1-2.exe/download&amp;lt;/strike&amp;gt;http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/Previous/1.1006.0/tdm64-gcc-4.6.1.exe/download&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; For a direct use with 32 bits computer, use the installer found at http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/Previous/1.1006.0/tdm-gcc-4.6.1.exe/download&lt;br /&gt;
&lt;br /&gt;
Go through the wizard: &lt;br /&gt;
* Disable &amp;quot;Check for updated files on the TDM-GCC server&amp;quot;&lt;br /&gt;
* Select &amp;quot;Create&amp;quot; &lt;br /&gt;
* Install to C:\MinGW &lt;br /&gt;
* Keep default settings&lt;br /&gt;
&lt;br /&gt;
== MSys  ==&lt;br /&gt;
Use the MSys package found at http://people.videolan.org/~jb/msys/msys.7z&lt;br /&gt;
&lt;br /&gt;
Un-7zip it to &#039;&#039;&#039;C:\MinGW\msys\&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The build is made exclusively from the command line, so execute &#039;&#039;&#039;C:\MinGW\msys\msys.bat&#039;&#039;&#039;, then type the commands as mentioned.&lt;br /&gt;
&lt;br /&gt;
= Get VLC sources  =&lt;br /&gt;
&lt;br /&gt;
== Git ==&lt;br /&gt;
Clone the git repo&lt;br /&gt;
 cd ~&lt;br /&gt;
 git clone git://git.videolan.org/vlc.git&lt;br /&gt;
&lt;br /&gt;
= Get configuration tools =&lt;br /&gt;
 cd vlc/extras/tools&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
 make m4&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
 export PATH=$PATH:$HOME/vlc/extras/tools/build/bin/&lt;br /&gt;
&lt;br /&gt;
It should build &#039;&#039;autoconf, automake, libtool, pkg-config, cmake, yasm&#039;&#039; and &#039;&#039;ragel&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Ragel compilation can fail with gcc 4.7, ignore it.&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If protobuf compilation fails, manually download https://github.com/google/protobuf/releases/download/v2.6.0/protobuf-2.6.0.tar.bz2, extract it to vlc\extras\tools\protobuf and comment $(UNPACK) and $(MOVE) for protobuf in vlc/extras/tools/tools.mak&amp;lt;br /&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; check that all is well with autoconf --version&lt;br /&gt;
&lt;br /&gt;
= Get precompiled 3rd party libraries =&lt;br /&gt;
 cd vlc/contrib&lt;br /&gt;
 mkdir win32 &amp;amp;&amp;amp; cd win32&lt;br /&gt;
 ../bootstrap --build=i686-w64-mingw32&lt;br /&gt;
 make prebuilt&lt;br /&gt;
 cd ..&lt;br /&gt;
 ln -sf i686-w64-mingw32 mingw32&lt;br /&gt;
&lt;br /&gt;
 export PATH=$PATH:$HOME/vlc/contrib/mingw32/bin/&lt;br /&gt;
 export PKG_CONFIG_PATH=$HOME/vlc/contrib/mingw32/lib/pkgconfig&lt;br /&gt;
 rm $HOME/vlc/contrib/mingw32/bin/moc $HOME/vlc/contrib/mingw32/bin/uic $HOME/vlc/contrib/mingw32/bin/rcc $HOME/vlc/contrib/mingw32/bin/luac&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; check that all is well with moc -v&lt;br /&gt;
&lt;br /&gt;
= Build VLC  =&lt;br /&gt;
&lt;br /&gt;
== Bootstrap  ==&lt;br /&gt;
In VLC root folder, do:&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
&lt;br /&gt;
== Configure  ==&lt;br /&gt;
 mkdir win32&lt;br /&gt;
 cd win32&lt;br /&gt;
 sh ../extras/package/win32/configure.sh --host=i686-w64-mingw32 --disable-nls&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If you want any custom options, like &amp;quot;--disable-lua&amp;quot; or anything of that nature, you can append them.&lt;br /&gt;
&lt;br /&gt;
== Make (compile) ==&lt;br /&gt;
 make -j4&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If your &amp;amp;lt;username&amp;amp;gt; starts with the &amp;quot;u&amp;quot; or &amp;quot;x&amp;quot; character, change C:\MSys\1.0\home\&amp;amp;lt;username&amp;amp;gt;\config.h and double all backslashes in VLC_COMPILED_BY constant.&lt;br /&gt;
&lt;br /&gt;
= Create packages  =&lt;br /&gt;
&lt;br /&gt;
Once the compilation is done, build self-contained VLC packages with one of the following &amp;quot;make&amp;quot; commands: &lt;br /&gt;
&lt;br /&gt;
 make package-win-common&lt;br /&gt;
&lt;br /&gt;
(This will create a subdirectory named vlc-x.x.x with all the binaries &amp;quot;stripped&amp;quot; without any debugging symbols). &lt;br /&gt;
&lt;br /&gt;
 make package-win32-zip&lt;br /&gt;
&lt;br /&gt;
(Same as above but will package the directory in a zip file). &lt;br /&gt;
&lt;br /&gt;
 make package-win32-exe&lt;br /&gt;
&lt;br /&gt;
(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).&lt;br /&gt;
&lt;br /&gt;
 make package-win32-base-debug&lt;br /&gt;
&lt;br /&gt;
(This will create a subdirectory named vlc-x.x.x with all the binaries containing debug info usable by gdb).&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
&lt;br /&gt;
See [[Win32CompileMSYSTroubleShooting]].&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
This howto was re-created by [[User:J-b|Jean-Baptiste Kempf]] and updated in June 2009, September 2009, December 2009 and March 2010. &lt;br /&gt;
&lt;br /&gt;
It was updated in June 2010 by Vicne with the help of J-b, gnosygnu and MichaelMc&lt;br /&gt;
&lt;br /&gt;
It was updated in July 2012 by gnosygnu. Note that there are several new notes in [[Win32CompileMSYSTroubleShooting]]. These reflect problems that were encountered on gnosygnu&#039;s setup (Windows XP SP3). Refer to this [http://forum.videolan.org/viewtopic.php?f=32&amp;amp;t=102843&amp;amp;sid=f58967215a83981dda030ff6efa3d493 forum thread] for more information.&lt;br /&gt;
&lt;br /&gt;
This howto was re-re-created by [[User:J-b|Jean-Baptiste Kempf]] in September 2012.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
*[[Win32CompileMSYSOld]] - deprecated documentation&lt;br /&gt;
&lt;br /&gt;
[[Category:Building]]&lt;/div&gt;</summary>
		<author><name>SpeederC</name></author>
	</entry>
</feed>