Nicolas Dechesne | beb4320 | 2011-09-30 00:54:14 +0200 | [diff] [blame] | 1 | <?xml version="1.0"?> |
| 2 | <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" |
| 3 | "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [ |
| 4 | <!ENTITY % version-entities SYSTEM "version.entities"> |
| 5 | %version-entities; |
| 6 | <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> |
| 7 | ]> |
| 8 | <refentry id="gst-building" revision="25 mar 2009"> |
| 9 | <refmeta> |
| 10 | <refentrytitle>Building GStreamer and GStreamer Applications</refentrytitle> |
| 11 | <manvolnum>3</manvolnum> |
| 12 | <refmiscinfo>GStreamer Core</refmiscinfo> |
| 13 | </refmeta> |
| 14 | |
| 15 | <refnamediv> |
| 16 | <refname>Building GStreamer and GStreamer Applications</refname> |
| 17 | <refpurpose> |
| 18 | How to build the GStreamer framework and applications using it. |
| 19 | </refpurpose> |
| 20 | </refnamediv> |
| 21 | |
| 22 | <refsect1> |
| 23 | <title>Building GStreamer on UNIX</title> |
| 24 | |
| 25 | <!-- this has been borrowed from the glib docs --> |
| 26 | <para> |
| 27 | On UNIX, GStreamer uses the standard GNU build system, |
| 28 | using <application>autoconf</application> for package |
| 29 | configuration and resolving portability issues, |
| 30 | <application>automake</application> for building makefiles |
| 31 | that comply with the GNU Coding Standards, and |
| 32 | <application>libtool</application> for building shared |
| 33 | libraries on multiple platforms. The normal sequence for |
| 34 | compiling and installing the GStreamer library is thus: |
| 35 | |
| 36 | <literallayout> |
| 37 | <userinput>./configure</userinput> |
| 38 | <userinput>make</userinput> |
| 39 | <userinput>make install</userinput> |
| 40 | </literallayout> |
| 41 | </para> |
| 42 | |
| 43 | <para> |
| 44 | The standard options provided by <application>GNU |
| 45 | autoconf</application> may be passed to the |
| 46 | <command>configure</command> script. Please see the |
| 47 | <application>autoconf</application> documentation or run |
| 48 | <command>./configure --help</command> for information about |
| 49 | the standard options. |
| 50 | </para> |
| 51 | |
| 52 | <para> |
| 53 | In addition there are several options to activate or deactivate features. |
| 54 | E.g. passing <option>--disable-gst-debug</option> to <command>configure</command> |
| 55 | will turn the debugging subsystem into a non-functional stub and remove all |
| 56 | macro based invocations from within the library (and anything compiled |
| 57 | against the library afterwards.) |
| 58 | </para> |
| 59 | <para> |
| 60 | If library size matters and one builds in a controlled environment, it is |
| 61 | also possible to totally remove subsystem code. This is intentionally not |
| 62 | offered as a configure option as it causes an ABI break. Code built against |
| 63 | a version of GStreamer without these modifications needs to be recompiled. |
| 64 | |
| 65 | <literallayout> |
| 66 | <userinput>make CFLAGS="-DGST_REMOVE_DEPRECATED -DGST_REMOVE_DISABLED"</userinput> |
| 67 | </literallayout> |
| 68 | |
| 69 | <itemizedlist> |
| 70 | <listitem> |
| 71 | <para> |
| 72 | <symbol>GST_REMOVE_DEPRECATED</symbol> - Omit deprecated functions |
| 73 | from the library. |
| 74 | </para> |
| 75 | </listitem> |
| 76 | <listitem> |
| 77 | <para> |
| 78 | <symbol>GST_REMOVE_DISABLED</symbol> - Omit stubs for disabled |
| 79 | subsystems from the library. |
| 80 | </para> |
| 81 | </listitem> |
| 82 | </itemizedlist> |
| 83 | </para> |
| 84 | |
| 85 | </refsect1> |
| 86 | |
| 87 | <refsect1> |
| 88 | <title>Building GStreamer Applications</title> |
| 89 | |
| 90 | <para> |
| 91 | Applications and libraries can use <command>pkg-config</command> to get all the |
| 92 | needed compiler and linker flags to build against GStreamer. Please note that |
| 93 | GStreamer is split into several libraries itself. |
| 94 | <command>pkg-config --list-all | grep gstreamer</command> will list the |
| 95 | available libraries. |
| 96 | </para> |
| 97 | |
| 98 | </refsect1> |
| 99 | |
| 100 | </refentry> |