source: general/genlib/glib2.xml@ 108e563

11.1 lazarus trunk xry111/intltool xry111/test-20220226
Last change on this file since 108e563 was 108e563, checked in by Bruce Dubbs <bdubbs@…>, 6 months ago

Package updates.
Update to glib-2.70.2.
Update to pangomm-1.46.2.
Update to pango-1.50.0.
Update to mypaint-brushes-1.3.1.
Update to sysstat-12.5.5.

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