Introduksjon til GLib
GLib pakken inneholder lavt nivå
biblioteker som er nyttige for å gi datastrukturhåndtering for C,
portabilitet innpakninger og grensesnitt for slik
kjøretidsfunksjonalitet som en hendelsesløkke, tråder, dynamisk
lasting og et objektsystem.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en
LFS 12.1 plattform.
Pakkeinformasjon
-
Nedlasting (HTTP):
https://download.gnome.org/sources/glib/2.78/glib-2.78.4.tar.xz
-
Nedlasting MD5 sum: 0781e889cab64f1f7dbb6e8357c6a95f
-
Nedlastingsstørrelse: 5.1 MB
-
Estimert diskplass som kreves: 130 MB (legg til 20 MB for
tester)
-
Estimert byggetid: 0.8 SBU (legg til 0,5 SBU for tester;
begge bruker parallellisme=4)
Ytterligere Nedlastinger
GLib Avhengigheter
Anbefalt
libxslt-1.1.39 og pcre2-10.42
Valgfri
dbus-1.14.10 (for noen tester), Fuse-3.16.2 og
bindfs (begge
trengs for en testt), GDB-14.1 (for bindinger), docbook-xml-4.5,
docbook-xsl-nons-1.79.2, GTK-Doc-1.33.2 (for å bygge API
dokumentasjonen), glib-networking-2.78.0 (for noen
tester, men dette er en sirkulær avhengighet), og sysprof
Ytterligere Kjøretids Avhengigheter
gobject-introspection-1.78.1
(burde bli installert før gtk+, atk, etc.)
Sitert direkte fra INSTALL
filen:
“Some of the
mimetype-related functionality in GIO requires the update-mime-database and
update-desktop-database
utilities”, which are part of shared-mime-info-2.4 and desktop-file-utils-0.27,
respectively. These two utilities are also needed for some tests.
Installasjon av GLib
Hvis ønskelig, bruk den valgfrie oppdateringen. I mange tilfeller
applikasjoner som bruker dette biblioteket, enten direkte eller
indirekte via andre biblioteker som f.eks som GTK+-3.24.41, gi ut mange
advarsler når du kjører fra kommandolinjen. Denne oppdateringen
muliggjør bruk av en miljøvariabel, GLIB_LOG_LEVEL
, som undertrykker uønskede meldinger.
Verdien av variabelen er et siffer som tilsvarer:
1 Varsling
|
2 Kritisk
|
3 Feil
|
4 Advarsel
|
5 Merknad
|
For eksempel export
GLIB_LOG_LEVEL=4
vil hoppe over utdata av
advarsels- og varselmeldinger (og info/feilsøkingsmeldinger hvis de
er slått på). Hvis GLIB_LOG_LEVEL
ikke
er definert, normal meldingsutdata vil ikke bli påvirket.
patch -Np1 -i ../glib-skip_warnings-1.patch
Warning
Hvis en tidligere versjon av glib er installert, flytter du
deklarasjonene ut av veien slik at senere pakker ikke møter
konflikter:
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
Installer GLib ved å kjøre
følgende kommandoer:
mkdir build &&
cd build &&
meson setup .. \
--prefix=/usr \
--buildtype=release \
-Dman=true &&
ninja
Note
Hvis libxslt-1.1.39 er installert, kan kommandoen
ovenfor angi flere (ca. 33) feil som starter med "Error: no ID
for constraint linkend:" når man genererer manualsidene. Disse er
ufarlige.
GLib testpakken krever
desktop-file-utils for noen
tester. Derimot, desktop-file-utils krever GLib for å kompilere; derfor må du først
installere GLib og deretter kjøre
testpakken.
Nå, som root
bruker:
ninja install &&
mkdir -p /usr/share/doc/glib-2.78.4 &&
cp -r ../docs/reference/{gio,glib,gobject} /usr/share/doc/glib-2.78.4
Du bør nå installere desktop-file-utils-0.27 og
shared-mime-info-2.4 og fortsette for å
kjøre testpakken.
Warning
Ikke kjør testpakken som root
da
vil noen tester mislykkes uventet og la noen ikke-FHS kompatible
mapper være i /usr
hierarkiet.
For å teste resultatene, etter å ha installert pakken, utsted:
LC_ALL=C ninja test
som ikke-root
bruker.
Parameterforklaringer
--buildtype=release
:
Spesifiser en byggetype egnet for stabile utgivelser av pakken, som
standard kan produsere uoptimaliserte binærfiler.
-Dman=true
: Denne bryteren
gjør at bygget lager og installerer pakkens manualsider.
-Dgtk_doc=true
: Denne bryteren gjør at
bygget lager og installerer API dokumentasjonen.