GLib-2.78.3

GLib の概要

The GLib package contains low-level libraries useful for providing data structure handling for C, portability wrappers and interfaces for runtime functionality such as an event loop, threads, dynamic loading and an object system.

[注記]

注記

LFS や依存パッケージが本ブックに示す最新安定バージョンでなかった場合には、BLFS 開発版においては、パッケージのビルドや処理実行が適切に行われないことがあります。

パッケージ情報

  • ダウンロード (HTTP): https://download.gnome.org/sources/glib/2.78/glib-2.78.3.tar.xz

  • ダウンロード MD5 sum: d93fb5bf93a14a2aa0578b97c349e5b9

  • ダウンロードサイズ: 5.1 MB

  • 必要ディスク容量: 130 MB(テスト実施時はさらに 20 MB)

  • 概算ビルド時間: 0.8 SBU(テスト実施時はさらに 0.5 SBU、いずれも paralleism=4)

Additional Downloads

GLib の依存パッケージ

推奨

任意

dbus-1.14.10 (for some tests), Fuse-3.16.2 and bindfs (両者ともに各種テストにて用いられる), GDB-14.1 (バインディングのため), docbook-xml-4.5, docbook-xsl-nons-1.79.2, GTK-Doc-1.33.2 (API ドキュメント生成のため), glib-networking-2.78.0 (一部のテストのため、ただし循環依存性あり), sysprof

実行時のその他の依存パッケージ

GLib のインストール

If desired, apply the optional patch. In many cases, applications that use this library, either directly or indirectly via other libraries such as GTK+-3.24.38, output numerous warnings when run from the command line. This patch enables the use of an environment variable, GLIB_LOG_LEVEL, that suppresses unwanted messages. The value of the variable is a digit that corresponds to:

1 Alert
2 Critical
3 Error
4 Warning
5 Notice

For instance export GLIB_LOG_LEVEL=4 will skip output of Warning and Notice messages (and Info/Debug messages if they are turned on). If GLIB_LOG_LEVEL is not defined, normal message output will not be affected.

patch -Np1 -i ../glib-skip_warnings-1.patch
[警告]

警告

If a previous version of glib is installed, move the headers out of the way so that later packages do not encounter conflicts:

if [ -e /usr/include/glib-2.0 ]; then
    rm -rf /usr/include/glib-2.0.old &&
    mv -vf /usr/include/glib-2.0{,.old}
fi

以下のコマンドを実行して GLib をビルドします。

mkdir build &&
cd    build &&

meson setup ..            \
      --prefix=/usr       \
      --buildtype=release \
      -Dman=true          &&
ninja
[注記]

注記

If libxslt-1.1.39 is installed, the above command may indicate several (about 33) errors that start with "Error: no ID for constraint linkend:" when generating the man pages. These are harmless.

GLib のテストスイートを実行するには desktop-file-utils が必要です。 しかし desktop-file-utils をビルドするには GLib が必要なものとなっています。 したがってまずは GLib をインストールした後にテストスイートを実行することになります。

root ユーザーになって以下を実行します。

ninja install &&

mkdir -p /usr/share/doc/glib-2.78.3 &&
cp -r ../docs/reference/{gio,glib,gobject} /usr/share/doc/glib-2.78.3

ここで desktop-file-utils-0.27shared-mime-info-2.4 をインストールした上で、テストスイートを実行してください。

[警告]

警告

Do not run the test suite as root or some tests will fail unexpectedly and leave some non-FHS-compliant directories in the /usr hierarchy.

ビルド結果をテストする場合は、本パッケージをインストールした後に、非 root ユーザーになって LC_ALL=C ninja test を実行します。

コマンド説明

--buildtype=release: 本パッケージの安定版リリース向けに適したビルドタイプを指定します。 デフォルトにしていると、最適化されていないバイナリを生成する場合があるためです。

-Dman=true: This switch causes the build to create and install the package man pages.

-Dgtk_doc=true: This switch causes the build to create and install the API documentation.

パッケージ構成

インストールプログラム: gapplication, gdbus, gdbus-codegen, gio, gio-querymodules, glib-compile-resources, glib-compile-schemas, glib-genmarshal, glib-gettextize, glib-mkenums, gobject-query, gresource, gsettings, gtester, gtester-report
インストールライブラリ: libgio-2.0.so, libglib-2.0.so, libgmodule-2.0.so, libgobject-2.0.so, libgthread-2.0.so
インストールディレクトリ: /usr/include/gio-unix-2.0, /usr/include/glib-2.0, /usr/lib/gio, /usr/lib/glib-2.0, /usr/share/glib-2.0, /usr/share/doc/{glib-2.0,glib-2.78.3}, /usr/share/gtk-doc/html/{gio,glib,gobject} (optional)

概略説明

gapplication

can be used to start applications and to send messages to already-running instances of other applications

gdbus

is a simple tool used for working with D-Bus objects

gdbus-codegen

is used to generate code and/or documentation for one or more D-Bus interfaces

gio

is a utility that makes many GIO features available from the command line

gio-querymodules

is used to create a giomodule.cache file in the listed directories. This file lists the implemented extension points for each module that has been found

glib-compile-resources

is used to read the resource description from a file and the files that it references to create a binary resource bundle that is suitable for use with the GResource API

glib-compile-schemas

is used to compile all the GSettings XML schema files in a directory into a binary file with the name gschemas.compiled that can be used by GSettings

glib-genmarshal

is a C code marshaller generation utility for GLib closures

glib-gettextize

is a variant of the gettext internationalization utility

glib-mkenums

is a C language enum description generation utility

gobject-query

is a small utility that draws a tree of types

gresource

offers a simple command line interface to GResource

gsettings

offers a simple command line interface to GSettings

gtester

is a test running utility

gtester-report

is a test report formatting utility

GLib ライブラリ

contain low-level core libraries for the GIMP Toolkit