source: general/genlib/glib2.xml@ 7da16bf

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7da16bf was 7da16bf, checked in by Bruce Dubbs <bdubbs@…>, 6 years ago

Update to glib-2.58.0

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

  • Property mode set to 100644
File size: 16.4 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 glib2-download-http "&gnome-download-http;/glib/2.58/glib-&glib2-version;.tar.xz">
8 <!ENTITY glib2-download-ftp "&gnome-download-ftp;/glib/2.58/glib-&glib2-version;.tar.xz">
9 <!ENTITY glib2-md5sum "9b5d21c802f55bf37171c4fbfe7d32d1">
10 <!ENTITY glib2-size "4.7 MB">
11 <!ENTITY glib2-buildsize "154 MB (add 4 MB for tests)">
12 <!ENTITY glib2-time "0.5 SBU (add 0.5 SBU for tests; both using paralleism=4)">
13]>
14
15<sect1 id="glib2" xreflabel="GLib-&glib2-version;">
16 <?dbhtml filename="glib2.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GLib-&glib2-version;</title>
24
25 <indexterm zone="glib2">
26 <primary sortas="a-GLib2">GLib2</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GLib</title>
31
32 <para>
33 The <application>GLib</application> package contains low-level
34 libraries useful for providing data structure handling for C, portability
35 wrappers and interfaces for such runtime functionality as an
36 event loop, threads, dynamic loading and an object system.
37 </para>
38
39 &lfs83_checked;
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>
45 Download (HTTP): <ulink url="&glib2-download-http;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download (FTP): <ulink url="&glib2-download-ftp;"/>
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download MD5 sum: &glib2-md5sum;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Download size: &glib2-size;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated disk space required: &glib2-buildsize;
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Estimated build time: &glib2-time;
71 </para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Optional patch:
80 <ulink url="&patch-root;/glib-&glib2-version;-skip_warnings-1.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
84
85 <bridgehead renderas="sect3">GLib Dependencies</bridgehead>
86
87 <bridgehead renderas="sect4">Recommended</bridgehead>
88 <para role="recommended">
89 <xref linkend="libxslt"/> and
90 <xref linkend="pcre"/> (built with Unicode properties)
91 </para>
92
93 <bridgehead renderas="sect4">Optional</bridgehead>
94 <para role="optional">
95 <xref linkend="dbus"/> and
96 <ulink url="https://bindfs.org/">bindfs</ulink>
97 (both may be used in some tests),
98 <xref linkend="DocBook"/>,
99 <xref linkend="docbook-xsl"/>,
100 <xref linkend="gtk-doc"/>, and
101 (to build api documentation)
102 </para>
103
104 <bridgehead renderas="sect4">Additional Runtime Dependencies</bridgehead>
105 <para role="recommended">
106 <xref role="runtime" linkend="gobject-introspection"/>
107 (should be installed before gtk+, atk, etc.)
108 </para>
109 <para role="optional">
110 Quoted directly from the <filename>INSTALL</filename> file:
111 <quote>Some of the mimetype-related functionality in GIO requires the
112 <command>update-mime-database</command> and
113 <command>update-desktop-database</command> utilities</quote>,
114 which are part of
115 <xref role="runtime" linkend="shared-mime-info"/> and
116 <xref role="runtime" linkend="desktop-file-utils"/>, respectively.
117 These two utilities are also needed for some tests.
118 </para>
119
120 <para condition="html" role="usernotes">User Notes:
121 <ulink url="&blfs-wiki;/glib2"/>
122 </para>
123 </sect2>
124
125 <sect2 role="installation">
126 <title>Installation of GLib</title>
127
128 <para>If desired, apply the optional patch. In many cases, applications that
129 use this library, either directly or indirectly via other libraries such
130 as <xref linkend="gtk3"/>, output numerous warnings when run from the
131 command line. This patch enables the use of an environment variable,
132 GLIB_LOG_LEVEL, that supresses unwanted messages. The value of the
133 variable is a digit that corresponds to:</para>
134
135 <simplelist>
136 <member>1 Alert</member>
137 <member>2 Critical</member>
138 <member>3 Error</member>
139 <member>4 Warning</member>
140 <member>5 Notice</member>
141 </simplelist>
142
143 <para>For instance GLIB_LOG_LEVEL=4 will skip output of Warning and
144 Notice messages (and Info/Debug messages if they are turned on).
145 If GLIB_LOG_LEVEL is not defined, normal message output will not
146 be affected.</para>
147
148<screen><userinput>patch -Np1 -i ../glib-&glib2-version;-skip_warnings-1.patch</userinput></screen>
149
150<!-- <warning>
151 <para>
152 If upgrading from a previous version of GLib that was built using
153 autotools, and the <application>libtool</application> archives were
154 installed, you will need to adjust all installed libtool archives to
155 replace references to the libtool archives for this package,
156 <filename>/usr/lib/libg{io,lib,module,object,thread}-2.0.la</filename>,
157 with the appropriate linker library flag (-l),
158 <command>-lg{io,lib,module,object,thread}</command>. 600+ files must
159 be modified on a complete gnome desktop.
160TODO: If reinstating meson, reference the instructions to remove .la files
161 </para>
162 </warning>
163-->
164 <para>
165 Install <application>GLib</application> by running the following
166 commands:
167 </para>
168
169<screen><userinput>mkdir build-glib &amp;&amp;
170cd build-glib &amp;&amp;
171
172meson --prefix=/usr \
173 -Dman=yes \
174 -Dselinux=false \
175 .. &amp;&amp;
176ninja</userinput></screen>
177<!--
178<screen><userinput>./configure - -prefix=/usr \
179 - -with-pcre=system \
180 - -with-python=/usr/bin/python3 &amp;&amp;
181make</userinput></screen>-->
182 <para>
183 The <application>GLib</application> test suite requires
184 <application>desktop-file-utils</application> for some tests. However,
185 <application>desktop-file-utils</application> requires
186 <application>GLib</application> in order to compile; therefore, you must
187 first install <application>GLib</application> and then run the test
188 suite.
189 </para>
190
191 <para>
192 Now, as the <systemitem class="username">root</systemitem> user:
193 </para>
194
195 <note><para>
196 If <xref linkend="libxslt"/> is installed, the following command may
197 indicate several (about 33) errors that start with "Error: no ID for
198 constraint linkend:" when installing the man pages. These are harmless.
199 </para></note>
200
201<!-- <screen role="root"><userinput>make install</userinput></screen> -->
202<!-- used when built with meson/ninja -->
203<screen role="root"><userinput>mkdir -p /usr/share/doc/glib-&glib2-version; &amp;&amp;
204cp -r ../docs/reference/{NEWS,gio,glib,gobject} /usr/share/doc/glib-&glib2-version;</userinput></screen>
205
206 <para>
207 You should now install <xref linkend="desktop-file-utils"/> and proceed to
208 run the test suite.
209 </para>
210
211 <para>
212 To test the results, after having installed the package, issue:
213 <command>ninja test</command>.
214 One test, gdatetime, is known to fail.
215 <!-- Needs /etc/localtime to be a symbolic link. In addition
216 the link must be to some place like /usr/share/zoneinfo/...
217
218 This can be overcome if the line below in glib/tests/gdatetime.c
219 is removed or commented out.
220 g_assert_true (*g_time_zone_get_identifier (tz) != '/');
221 -->
222 </para>
223
224 </sect2>
225
226 <sect2 role="commands">
227 <title>Command Explanations</title>
228
229 <para>
230 <parameter>-Dman=true</parameter>: This switch causes the
231 build to create and install the package man pages.
232 </para>
233
234 <para>
235 <parameter>-Dselinux=false</parameter>: This switch disables
236 support fo rselinux wich is not supported in BLFS.
237 </para>
238
239 <para>
240 <parameter>-Ddoc=true</parameter>: This switch causes the
241 build to create and install the API documentation.
242 </para>
243
244 </sect2>
245
246 <sect2 role="content">
247 <title>Contents</title>
248
249 <segmentedlist>
250 <segtitle>Installed Programs</segtitle>
251 <segtitle>Installed Libraries</segtitle>
252 <segtitle>Installed Directories</segtitle>
253
254 <seglistitem>
255 <seg>
256 gapplication, gdbus, gdbus-codegen,
257 gio, gio-querymodules,
258 glib-compile-resources, glib-compile-schemas,
259 glib-genmarshal, glib-gettextize,
260 glib-mkenums, gobject-query,
261 gresource, gsettings,
262 gtester, and gtester-report
263 </seg>
264 <seg>
265 libgio-2.0.so,
266 libglib-2.0.so,
267 libgmodule-2.0.so,
268 libgobject-2.0.so, and
269 libgthread-2.0.so
270 </seg>
271 <seg>
272 /usr/include/gio-unix-2.0,
273 /usr/include/glib-2.0,
274 /usr/lib/glib-2.0,
275 /usr/share/glib-2.0, and
276 /usr/share/gtk-doc/html/{gio,glib,gobject}
277 </seg>
278 </seglistitem>
279 </segmentedlist>
280
281 <variablelist>
282 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
283 <?dbfo list-presentation="list"?>
284 <?dbhtml list-presentation="table"?>
285
286 <varlistentry id="gapplication">
287 <term><command>gapplication</command></term>
288 <listitem>
289 <para>
290 can be used to start applications and to send
291 messages to already-running instances of other applications.
292 </para>
293 <indexterm zone="glib2 gapplication">
294 <primary sortas="b-gapplication">application</primary>
295 </indexterm>
296 </listitem>
297 </varlistentry>
298 <varlistentry id="gdbus">
299 <term><command>gdbus</command></term>
300 <listitem>
301 <para>
302 is a simple tool used for working with
303 <application>D-Bus</application> objects.
304 </para>
305 <indexterm zone="glib2 gdbus">
306 <primary sortas="b-gdbus">gdbus</primary>
307 </indexterm>
308 </listitem>
309 </varlistentry>
310
311 <varlistentry id="gdbus-codegen">
312 <term><command>gdbus-codegen</command></term>
313 <listitem>
314 <para>
315 is used to generate code and/or documentation for one or
316 more <application>D-Bus</application> interfaces.
317 </para>
318 <indexterm zone="glib2 gdbus-codegen">
319 <primary sortas="b-gdbus-codegen">gdbus-codegen</primary>
320 </indexterm>
321 </listitem>
322 </varlistentry>
323
324 <varlistentry id="gio">
325 <term><command>gio</command></term>
326 <listitem>
327 <para>
328 is a utility that makes many <application>GIO</application>
329 features available from the command line.
330 </para>
331 <indexterm zone="glib2 gio">
332 <primary sortas="b-gio">gio</primary>
333 </indexterm>
334 </listitem>
335 </varlistentry>
336
337 <varlistentry id="gio-querymodules">
338 <term><command>gio-querymodules</command></term>
339 <listitem>
340 <para>
341 is used to create a <filename>giomodule.cache</filename> file in
342 the listed directories. This file lists the implemented extension
343 points for each module that has been found.
344 </para>
345 <indexterm zone="glib2 gio-querymodules">
346 <primary sortas="b-gio-querymodules">gio-querymodules</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350
351 <varlistentry id="glib-compile-resources">
352 <term><command>glib-compile-resources</command></term>
353 <listitem>
354 <para>
355 is used to read the resource description from a file and
356 the files that it references to create a binary resource
357 bundle that is suitable for use with the GResource API.
358 </para>
359 <indexterm zone="glib2 glib-compile-resources">
360 <primary sortas="b-glib-compile-resources">glib-compile-resources</primary>
361 </indexterm>
362 </listitem>
363 </varlistentry>
364
365 <varlistentry id="glib-compile-schemas">
366 <term><command>glib-compile-schemas</command></term>
367 <listitem>
368 <para>
369 is used to compile all the GSettings XML schema files
370 in directory into a binary file with the name
371 <filename>gschemas.compiled</filename> that can be used by GSettings.
372 </para>
373 <indexterm zone="glib2 glib-compile-schemas">
374 <primary sortas="b-glib-compile-resources">glib-compile-schemas</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
379 <varlistentry id="glib-genmarshal">
380 <term><command>glib-genmarshal</command></term>
381 <listitem>
382 <para>
383 is a C code marshaller generation utility for GLib closures.
384 </para>
385 <indexterm zone="glib2 glib-genmarshal">
386 <primary sortas="b-glib-genmarshal">glib-genmarshal</primary>
387 </indexterm>
388 </listitem>
389 </varlistentry>
390
391 <varlistentry id="glib-gettextize">
392 <term><command>glib-gettextize</command></term>
393 <listitem>
394 <para>
395 is a variant of the <application>gettext</application>
396 internationalization utility.
397 </para>
398 <indexterm zone="glib2 glib-gettextize">
399 <primary sortas="b-glib-gettextize">glib-gettextize</primary>
400 </indexterm>
401 </listitem>
402 </varlistentry>
403
404 <varlistentry id="glib-mkenums">
405 <term><command>glib-mkenums</command></term>
406 <listitem>
407 <para>
408 is a C language enum description generation utility.
409 </para>
410 <indexterm zone="glib2 glib-mkenums">
411 <primary sortas="b-glib-mkenums">glib-mkenums</primary>
412 </indexterm>
413 </listitem>
414 </varlistentry>
415
416 <varlistentry id="gobject-query">
417 <term><command>gobject-query</command></term>
418 <listitem>
419 <para>
420 is a small utility that draws a tree of types.
421 </para>
422 <indexterm zone="glib2 gobject-query">
423 <primary sortas="b-gobject-query">gobject-query</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427
428 <varlistentry id="gresource">
429 <term><command>gresource</command></term>
430 <listitem>
431 <para>
432 offers a simple command line interface to GResource.
433 </para>
434 <indexterm zone="glib2 gresource">
435 <primary sortas="b-gresource">gresource</primary>
436 </indexterm>
437 </listitem>
438 </varlistentry>
439
440 <varlistentry id="gsettings">
441 <term><command>gsettings</command></term>
442 <listitem>
443 <para>
444 offers a simple command line interface to GSettings.
445 </para>
446 <indexterm zone="glib2 gsettings">
447 <primary sortas="b-gsettings">gsettings</primary>
448 </indexterm>
449 </listitem>
450 </varlistentry>
451
452 <varlistentry id="gtester">
453 <term><command>gtester</command></term>
454 <listitem>
455 <para>
456 is a test running utility.
457 </para>
458 <indexterm zone="glib2 gtester">
459 <primary sortas="b-gtester">gtester</primary>
460 </indexterm>
461 </listitem>
462 </varlistentry>
463
464 <varlistentry id="gtester-report">
465 <term><command>gtester-report</command></term>
466 <listitem>
467 <para>
468 is a test report formatting utility.
469 </para>
470 <indexterm zone="glib2 gtester-report">
471 <primary sortas="b-gtester-report">gtester-report</primary>
472 </indexterm>
473 </listitem>
474 </varlistentry>
475
476 <varlistentry id="GLib-libraries">
477 <term>GLib libraries</term>
478 <listitem>
479 <para>
480 contain low-level core libraries for the
481 <application>GIMP</application> Toolkit.
482 </para>
483 <indexterm zone="glib2 GLib-libraries">
484 <primary sortas="c-GLib-libraries">Glib libraries</primary>
485 </indexterm>
486 </listitem>
487 </varlistentry>
488
489 </variablelist>
490
491 </sect2>
492
493</sect1>
Note: See TracBrowser for help on using the repository browser.