1 | <chapter id="chapter-win32"> |
---|
2 | <title>Windows support</title> |
---|
3 | <sect1 id="section-win32-build"> |
---|
4 | <title>Building <application>GStreamer</application> under Win32</title> |
---|
5 | |
---|
6 | <para>There are different makefiles that can be used to build GStreamer with the usual Microsoft |
---|
7 | compiling tools.</para> |
---|
8 | |
---|
9 | <para>The Makefile is meant to be used with the GNU make program and the free |
---|
10 | version of the Microsoft compiler (<ulink url="http://msdn.microsoft.com/visualc/vctoolkit2003/">http://msdn.microsoft.com/visualc/vctoolkit2003/</ulink>). You also |
---|
11 | have to modify your system environment variables to use it from the command-line. You will also |
---|
12 | need a working Platform SDK for Windows that is available for free from Microsoft.</para> |
---|
13 | |
---|
14 | <para>The projects/makefiles will generate automatically some source files needed to compile |
---|
15 | GStreamer. That requires that you have installed on your system some GNU tools and that they are |
---|
16 | available in your system PATH.</para> |
---|
17 | |
---|
18 | <para>The GStreamer project depends on other libraries, namely :</para> |
---|
19 | <itemizedlist> |
---|
20 | <listitem><para>GLib</para></listitem> |
---|
21 | <listitem><para>popt</para></listitem> |
---|
22 | <listitem><para>libxml2</para></listitem> |
---|
23 | <listitem><para>libintl</para></listitem> |
---|
24 | <listitem><para>libiconv</para></listitem> |
---|
25 | </itemizedlist> |
---|
26 | |
---|
27 | <para>There is now an existing package that has all these dependencies built with MSVC7.1. It exists either as precompiled librairies |
---|
28 | and headers in both Release and Debug mode, or as the source package to build it yourself. You can |
---|
29 | find it on <ulink url="http://mukoli.free.fr/gstreamer/deps/">http://mukoli.free.fr/gstreamer/deps/</ulink>.</para> |
---|
30 | |
---|
31 | <note> |
---|
32 | <title>Notes</title> |
---|
33 | |
---|
34 | <para>GNU tools needed that you can find on <ulink url="http://gnuwin32.sourceforge.net/">http://gnuwin32.sourceforge.net/</ulink></para> |
---|
35 | <itemizedlist> |
---|
36 | <listitem><para>GNU flex (tested with 2.5.4)</para></listitem> |
---|
37 | <listitem><para>GNU bison (tested with 1.35)</para></listitem> |
---|
38 | </itemizedlist> |
---|
39 | |
---|
40 | <para>and <ulink url="http://www.mingw.org/">http://www.mingw.org/</ulink></para> |
---|
41 | <itemizedlist> |
---|
42 | <listitem><para>GNU make (tested with 3.80)</para></listitem> |
---|
43 | </itemizedlist> |
---|
44 | |
---|
45 | <para>the generated files from the -auto makefiles will be available soon separately on the net |
---|
46 | for convenience (people who don't want to install GNU tools).</para> |
---|
47 | </note> |
---|
48 | </sect1> |
---|
49 | |
---|
50 | <sect1 id="section-win32-install"> |
---|
51 | <title>Installation on the system</title> |
---|
52 | |
---|
53 | <para>By default, GSTreamer needs a registry. You have to generate it using "gst-register.exe". It will create |
---|
54 | the file in c:\gstreamer\registry.xml that will hold all the plugins you can use.</para> |
---|
55 | |
---|
56 | <para>You should install the GSTreamer core in c:\gstreamer\bin and the plugins in c:\gstreamer\plugins. Both |
---|
57 | directories should be added to your system PATH. The library dependencies should be installed in c:\usr</para> |
---|
58 | |
---|
59 | <para>For example, my current setup is :</para> |
---|
60 | |
---|
61 | <itemizedlist> |
---|
62 | <listitem><para><filename>c:\gstreamer\registry.xml</filename></para></listitem> |
---|
63 | <listitem><para><filename>c:\gstreamer\bin\gst-inspect.exe</filename></para></listitem> |
---|
64 | <listitem><para><filename>c:\gstreamer\bin\gst-launch.exe</filename></para></listitem> |
---|
65 | <listitem><para><filename>c:\gstreamer\bin\gst-register.exe</filename></para></listitem> |
---|
66 | <listitem><para><filename>c:\gstreamer\bin\gstbytestream.dll</filename></para></listitem> |
---|
67 | <listitem><para><filename>c:\gstreamer\bin\gstelements.dll</filename></para></listitem> |
---|
68 | <listitem><para><filename>c:\gstreamer\bin\gstoptimalscheduler.dll</filename></para></listitem> |
---|
69 | <listitem><para><filename>c:\gstreamer\bin\gstspider.dll</filename></para></listitem> |
---|
70 | <listitem><para><filename>c:\gstreamer\bin\libgtreamer-0.8.dll</filename></para></listitem> |
---|
71 | <listitem><para><filename>c:\gstreamer\plugins\gst-libs.dll</filename></para></listitem> |
---|
72 | <listitem><para><filename>c:\gstreamer\plugins\gstmatroska.dll</filename></para></listitem> |
---|
73 | <listitem><para><filename>c:\usr\bin\iconv.dll</filename></para></listitem> |
---|
74 | <listitem><para><filename>c:\usr\bin\intl.dll</filename></para></listitem> |
---|
75 | <listitem><para><filename>c:\usr\bin\libglib-2.0-0.dll</filename></para></listitem> |
---|
76 | <listitem><para><filename>c:\usr\bin\libgmodule-2.0-0.dll</filename></para></listitem> |
---|
77 | <listitem><para><filename>c:\usr\bin\libgobject-2.0-0.dll</filename></para></listitem> |
---|
78 | <listitem><para><filename>c:\usr\bin\libgthread-2.0-0.dll</filename></para></listitem> |
---|
79 | <listitem><para><filename>c:\usr\bin\libxml2.dll</filename></para></listitem> |
---|
80 | <listitem><para><filename>c:\usr\bin\popt.dll</filename></para></listitem> |
---|
81 | </itemizedlist> |
---|
82 | |
---|
83 | </sect1> |
---|
84 | |
---|
85 | </chapter> |
---|