glfs/general/prog/gc.xml
Ken Moffat d4796f8b41 Tag a few more things that build with 6.7, and check that my subversion-1.6.13 test installation is working.
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8661 af4574ff-66df-0310-9fd7-8a98e5e911e0
2010-11-03 20:01:49 +00:00

161 lines
5.5 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY gc-download-http "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc&gc-version;.tar.gz">
<!ENTITY gc-download-ftp "&gentoo-ftp-repo;/gc&gc-version;.tar.gz">
<!ENTITY gc-md5sum "418d38bd9c66398386a372ec0435250e">
<!ENTITY gc-size "739 KB">
<!ENTITY gc-buildsize "7.1 MB">
<!ENTITY gc-time "0.2 SBU">
]>
<sect1 id="gc" xreflabel="GC-&gc-version;">
<?dbhtml filename="gc.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>GC-&gc-version;</title>
<indexterm zone="gc">
<primary sortas="a-GC">GC</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to GC</title>
<para>The <application>GC</application> package contains the
Boehm-Demers-Weiser conservative garbage collector, which can be used as a
garbage collecting replacement for the C malloc function or C++ new
operator. It allows you to allocate memory basically as you normally would,
without explicitly deallocating memory that is no longer useful. The
collector automatically recycles memory when it determines that it can no
longer be otherwise accessed. The collector is also used by a number of
programming language implementations that either use C as intermediate
code, want to facilitate easier interoperation with C libraries, or just
prefer the simple collector interface. Alternatively, the garbage collector
may be used as a leak detector for C or C++ programs, though that is not
its primary goal.</para>
&lfs67_built;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&gc-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&gc-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &gc-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &gc-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &gc-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &gc-time;</para>
</listitem>
</itemizedlist>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/gc"/></para>
</sect2>
<sect2 role="installation">
<title>Installation of GC</title>
<para>Install <application>GC</application> by running the following
commands:</para>
<screen><userinput>sed -i "s|\$(datadir)/@PACKAGE@|&amp;-&gc-version;|" doc/Makefile.in &amp;&amp;
./configure --prefix=/usr \
--datadir=/usr/share/doc --enable-cplusplus &amp;&amp;
make</userinput></screen>
<para>To test the results, issue: <command>make check</command>.</para>
<para>Now, as the <systemitem class="username">root</systemitem> user:</para>
<screen role="root"><userinput>make install &amp;&amp;
install -v -m644 doc/gc.man /usr/share/man/man3/gc_malloc.3 &amp;&amp;
ln -v -s gc_malloc.3 /usr/share/man/man3/gc.3</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para><command>sed -i "s|\$(datadir)/@PACKAGE@|&amp;-&gc-version;|" ...</command>:
This command appends <quote>-&gc-version;</quote> to the default documentation
installation path of
<filename class='directory'>/usr/share/doc/gc</filename>.</para>
<para><parameter>--datadir=/usr/share/doc</parameter>: This parameter
changes the installation path of the documentation to
<filename class='directory'>/usr/share/doc/gc</filename> instead of
<filename class='directory'>/usr/share/gc</filename>.</para>
<para><parameter>--enable-cplusplus</parameter>: This parameter forces
the building and installation of the C++ library along with the standard
C library.</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>None</seg>
<seg>libgc.{so,a} and libgccpp.{so,a}</seg>
<seg>/usr/include/gc and /usr/share/doc/gc-&gc-version;</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libgc">
<term><filename class='libraryfile'>libgc.{so,a}</filename></term>
<listitem>
<para>contains a C interface to the conservative garbage collector,
primarily designed to replace the C malloc function.</para>
<indexterm zone="gc libgc">
<primary sortas="c-libgc">libgc.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgccpp">
<term><filename class='libraryfile'>libgccpp.{so,a}</filename></term>
<listitem>
<para>contains a C++ interface to the conservative garbage
collector.</para>
<indexterm zone="gc libgccpp">
<primary sortas="c-libgccpp">libgccpp.{so,a}</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>