source: general/prog/gc.xml@ 0840866

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 0840866 was 0840866, checked in by Fernando de Oliveira <fernando@…>, 10 years ago

dhcpcd-6.4.0.
traceroute-2.0.20.
gc-7.4.2.
libpng-1.6.12.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@13245 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 6.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY gc-download-http "http://www.hboehm.info/gc/gc_source/gc-&gc-version;.tar.gz">
8 <!ENTITY gc-download-ftp " ">
9 <!ENTITY gc-md5sum "12c05fd2811d989341d8c6d81f66af87">
10 <!ENTITY gc-size "1.1 MB">
11 <!ENTITY gc-buildsize "9.7 MB (additional 2.3 MB for the tests)">
12 <!ENTITY gc-time "0.2 SBU (additional 0.2 SBU for the tests)">
13]>
14
15<sect1 id="gc" xreflabel="GC-&gc-version;">
16 <?dbhtml filename="gc.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GC-&gc-version;</title>
24
25 <indexterm zone="gc">
26 <primary sortas="a-GC">GC</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GC</title>
31
32 <para>
33 The <application>GC</application> package contains the Boehm-Demers-Weiser
34 conservative garbage collector, which can be used as a garbage collecting
35 replacement for the C malloc function or C++ new operator. It allows you
36 to allocate memory basically as you normally would, without explicitly
37 deallocating memory that is no longer useful. The collector automatically
38 recycles memory when it determines that it can no longer be otherwise
39 accessed. The collector is also used by a number of programming language
40 implementations that either use C as intermediate code, want to facilitate
41 easier interoperation with C libraries, or just prefer the simple
42 collector interface. Alternatively, the garbage collector may be used as a
43 leak detector for C or C++ programs, though that is not its primary goal.
44 </para>
45
46 &lfs75_checked;
47
48 <bridgehead renderas="sect3">Package Information</bridgehead>
49 <itemizedlist spacing="compact">
50 <listitem>
51 <para>
52 Download (HTTP): <ulink url="&gc-download-http;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download (FTP): <ulink url="&gc-download-ftp;"/>
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download MD5 sum: &gc-md5sum;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Download size: &gc-size;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated disk space required: &gc-buildsize;
73 </para>
74 </listitem>
75 <listitem>
76 <para>
77 Estimated build time: &gc-time;
78 </para>
79 </listitem>
80 </itemizedlist>
81
82 <bridgehead renderas="sect4">Required</bridgehead>
83 <para role="required">
84 <xref linkend="libatomic_ops"/>
85 </para>
86<!-- (Gc contains a copy of
87 Libatomic_ops-&gc-version; which it will compile and statically link if
88 configure doesn't find Libatomic_ops installed on your system)
89 </para>
90-->
91
92 <para condition="html" role="usernotes">
93 User Notes: <ulink url="&blfs-wiki;/gc"/>
94 </para>
95 </sect2>
96
97 <sect2 role="installation">
98 <title>Installation of GC</title>
99
100 <para>
101 Install <application>GC</application> by running the following commands:
102 </para>
103
104<!--
105<screen><userinput>sed -i 's#AM_CONFIG_HEADER#AC_CONFIG_HEADERS#' configure.ac &amp;&amp;
106sed -i 's#AM_CONFIG_HEADER#AC_CONFIG_HEADERS#' libatomic_ops/configure.ac &amp;&amp;
107-->
108<screen><userinput>sed -i 's#pkgdata#doc#' doc/doc.am &amp;&amp;
109autoreconf -fi &amp;&amp;
110./configure --prefix=/usr \
111 --enable-cplusplus \
112 --disable-static \
113 --docdir=/usr/share/doc/gc-&gc-version; &amp;&amp;
114make</userinput></screen>
115
116 <para>
117 To test the results, issue: <command>make check</command>.
118 </para>
119
120 <para>
121 Now, as the <systemitem class="username">root</systemitem> user:
122 </para>
123
124<screen role="root"><userinput>make install &amp;&amp;
125install -v -m644 doc/gc.man /usr/share/man/man3/gc_malloc.3 &amp;&amp;
126ln -sfv gc_malloc.3 /usr/share/man/man3/gc.3 </userinput></screen>
127 </sect2>
128
129 <sect2 role="commands">
130 <title>Command Explanations</title>
131
132<!-- <para>
133 <command>sed -i 's#AM_CONFIG_HEADER ...</command>: This
134 <command>sed</command> fixes building with
135 <application>Automake</application> 1.13.
136 </para>
137-->
138
139 <para>
140 <command>sed -i 's#pkgdata#doc#' doc/doc.am</command> and
141 <option>--docdir=/usr/share/doc/gc-&gc-version;</option>:
142 These commands are used so the package will install the
143 documentation in a versioned directory.
144 </para>
145
146 <para>
147 <command>autoreconf -fi</command>: This regenerates the
148 <command>configure</command> script and the
149 <filename>Makefile.in</filename> files.
150 </para>
151
152 <para>
153 <parameter>--enable-cplusplus</parameter>: This parameter enables the
154 building and installing the C++ library along with the standard C library.
155 </para>
156
157 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
158 href="../../xincludes/static-libraries.xml"/>
159
160 </sect2>
161
162 <sect2 role="content">
163 <title>Contents</title>
164
165 <segmentedlist>
166 <segtitle>Installed Programs</segtitle>
167 <segtitle>Installed Libraries</segtitle>
168 <segtitle>Installed Directories</segtitle>
169
170 <seglistitem>
171 <seg>
172 None
173 </seg>
174 <seg>
175 libcord.so, libgc.so and
176 libgccpp.so
177 </seg>
178 <seg>
179 /usr/include/gc and
180 /usr/share/doc/gc-&gc-version;
181 </seg>
182 </seglistitem>
183 </segmentedlist>
184
185 <variablelist>
186 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
187 <?dbfo list-presentation="list"?>
188 <?dbhtml list-presentation="table"?>
189
190 <varlistentry id="libgc">
191 <term><filename class="libraryfile">libgc.so</filename></term>
192 <listitem>
193 <para>
194 contains a C interface to the conservative garbage collector,
195 primarily designed to replace the C malloc function.
196 </para>
197 <indexterm zone="gc libgc">
198 <primary sortas="c-libgc">libgc.so</primary>
199 </indexterm>
200 </listitem>
201 </varlistentry>
202
203 <varlistentry id="libgccpp">
204 <term><filename class="libraryfile">libgccpp.so</filename></term>
205 <listitem>
206 <para>
207 contains a C++ interface to the conservative garbage collector.
208 </para>
209 <indexterm zone="gc libgccpp">
210 <primary sortas="c-libgccpp">libgccpp.so</primary>
211 </indexterm>
212 </listitem>
213 </varlistentry>
214
215 </variablelist>
216
217 </sect2>
218
219</sect1>
Note: See TracBrowser for help on using the repository browser.