Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Building GStreamer and GStreamer Applications: GStreamer 1.0 Core Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual">
<link rel="up" href="gstreamer.html" title="GStreamer Overview">
<link rel="prev" href="gstreamer.html" title="GStreamer Overview">
<link rel="next" href="gst-running.html" title="Running GStreamer Applications">
<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="gstreamer.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gstreamer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gst-running.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-building"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle">Building GStreamer and GStreamer Applications</span></h2>
<p>Building GStreamer and GStreamer Applications — 
How to build the GStreamer framework and applications using it.
</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="id-1.2.5.3"></a><h2>Building GStreamer on UNIX</h2>
<p>
    On UNIX, GStreamer uses the standard GNU build system,
    using <span class="application">autoconf</span> for package
    configuration and resolving portability issues,
    <span class="application">automake</span> for building makefiles
    that comply with the GNU Coding Standards, and
    <span class="application">libtool</span> for building shared
    libraries on multiple platforms.  The normal sequence for
    compiling and installing the GStreamer library is thus:

    </p>
<div class="literallayout"><p><br>
      <strong class="userinput"><code>./configure</code></strong><br>
      <strong class="userinput"><code>make</code></strong><br>
      <strong class="userinput"><code>make install</code></strong><br>
    </p></div>
<p>
  </p>
<p>
    The standard options provided by <span class="application">GNU
    autoconf</span> may be passed to the
    <span class="command"><strong>configure</strong></span> script.  Please see the
    <span class="application">autoconf</span> documentation or run
    <span class="command"><strong>./configure --help</strong></span> for information about
    the standard options.
  </p>
<p>
    In addition there are several options to activate or deactivate features.
    E.g. passing <code class="option">--disable-gst-debug</code> to <span class="command"><strong>configure</strong></span>
    will turn the debugging subsystem into a non-functional stub and remove all
    macro based invocations from within the library (and anything compiled
    against the library afterwards.)
  </p>
<p>
    If library size matters and one builds in a controlled environment, it is
    also possible to totally remove subsystem code. This is intentionally not
    offered as a configure option as it causes an ABI break. Code built against
    a version of GStreamer without these modifications needs to be recompiled.

    </p>
<div class="literallayout"><p><br>
      <strong class="userinput"><code>make CFLAGS="-DGST_REMOVE_DEPRECATED -DGST_REMOVE_DISABLED"</code></strong><br>
    </p></div>
<p>

    </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>
          <span class="symbol">GST_REMOVE_DEPRECATED</span> - Omit deprecated functions
          from the library.
        </p></li>
<li class="listitem"><p>
          <span class="symbol">GST_REMOVE_DISABLED</span> - Omit stubs for disabled
          subsystems from the library.
        </p></li>
</ul></div>
<p>
  </p>
</div>
<div class="refsect1">
<a name="id-1.2.5.4"></a><h2>Building GStreamer Applications</h2>
<p>
Applications and libraries can use <span class="command"><strong>pkg-config</strong></span> to get all the
needed compiler and linker flags to build against GStreamer. Please note that
GStreamer is split into several libraries itself.
<span class="command"><strong>pkg-config --list-all | grep gstreamer</strong></span> will list the
available libraries.
</p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.27</div>
</body>
</html>