WebKitGTK-2.46.3

Introduksjon til WebKitGTK

WebKitGTK pakken er en overføring av flyttbar nettgjengivelsesmotor WebKit til GTK+ 3 og GTK 4 plattformer.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

  • Nedlasting (HTTP): https://webkitgtk.org/releases/webkitgtk-2.46.3.tar.xz

  • Nedlasting MD5 sum: 17418066047237be6dd6df128acb231c

  • Nedlastingsstørrelse: 41 MB

  • Estimert diskplass som kreves: 1.4 GB (163 MB installert, legg til 157 MB for GTK-4)

  • Estimert byggetid: 32 SBU (for GTK-3, bruk parallellisme=8, legg til 32 SBU for GTK-4)

WebKitGTK Avhengigheter

Påkrevd

Cairo-1.18.2, CMake-3.31.0, gst-plugins-base-1.24.9, gst-plugins-bad-1.24.9, GTK+-3.24.43, GTK-4.16.5, ICU-76.1, Little CMS-2.16, libgudev-238, libsecret-0.21.4, libsoup-3.4.4, libtasn1-4.19.0, libwebp-1.4.0, Mesa-24.2.7, OpenJPEG-2.5.2, Ruby-3.3.6, SQLite-3.47.0, unifdef-2.12, og Which-2.21

Anbefalt

Valgfri

Gi-DocGen-2024.1, harfBuzz-10.1.0, Wayland-1.23.0, WOFF2-1.0.2, ccache, Hyphen, libbacktrace, libmanette, og sysprof

Installasjon av WebKitGTK

Installasjon av WebKitGTK

[Viktig]

Viktig

Denne pakken tillater bygging med enten GTK-3 eller GTK-4, men ikke begge deler i samme bygg. GTK-4-versjonen er nødvendig for pakker som f.eks Epiphany-47.2. Andre pakker, som f.eks Balsa-2.6.4 eller Evolution-3.54.1, krever GTK-3 versjon. Begge versjonene kan installeres side ved side på samme system. Vi gir byggeinstruksjoner for begge tilfeller nedenfor, men den eneste forskjellen er innstillingen av -DUSE_GTK4

Først må du fikse en byggefeil som oppstår når du bruker ICU-76 eller nyere:

sed '/U_SHOW_CPLUSPLUS_API/a#define U_SHOW_CPLUSPLUS_HEADER_API 0' \
    -i Source/WTF/wtf/Platform.h

Hvis du vil installere GTK+-3-versjonen av WebKitGTK, kjør følgende kommandoer:

mkdir -vp build &&
cd        build &&

cmake -D CMAKE_BUILD_TYPE=Release      \
      -D CMAKE_INSTALL_PREFIX=/usr     \
      -D CMAKE_SKIP_INSTALL_RPATH=ON   \
      -D PORT=GTK                      \
      -D LIB_INSTALL_DIR=/usr/lib      \
      -D USE_LIBBACKTRACE=OFF          \
      -D USE_LIBHYPHEN=OFF             \
      -D ENABLE_GAMEPAD=OFF            \
      -D ENABLE_MINIBROWSER=ON         \
      -D ENABLE_DOCUMENTATION=OFF      \
      -D ENABLE_WEBDRIVER=OFF          \
      -D USE_WOFF2=OFF                 \
      -D USE_GTK4=OFF                  \
      -D ENABLE_JOURNALD_LOG=OFF       \
      -D ENABLE_BUBBLEWRAP_SANDBOX=ON  \
      -D USE_SYSPROF_CAPTURE=NO        \
      -W no-dev -G Ninja ..            &&
ninja

Denne pakken har ikke en fungerende testpakke. Imidlertid er det en brukbar grunnleggende grafisk nettleser i byggemappen, build/bin/MiniBrowser. Hvis det mislykkes å starte den, er det et problem med bygget.

Nå, som root bruker:

ninja install

Hvis du vil installere GTK4 versjonen av WebKitGTK, kjør følgende kommandoer:

rm -rf * .[^.]* &&

cmake -D CMAKE_BUILD_TYPE=Release      \
      -D CMAKE_INSTALL_PREFIX=/usr     \
      -D CMAKE_SKIP_INSTALL_RPATH=ON   \
      -D PORT=GTK                      \
      -D LIB_INSTALL_DIR=/usr/lib      \
      -D USE_LIBBACKTRACE=OFF          \
      -D USE_LIBHYPHEN=OFF             \
      -D ENABLE_GAMEPAD=OFF            \
      -D ENABLE_MINIBROWSER=ON         \
      -D ENABLE_DOCUMENTATION=OFF      \
      -D USE_WOFF2=OFF                 \
      -D USE_GTK4=ON                   \
      -D ENABLE_JOURNALD_LOG=OFF       \
      -D ENABLE_BUBBLEWRAP_SANDBOX=ON  \
      -D USE_SYSPROF_CAPTURE=NO        \
      -W no-dev -G Ninja ..            &&
ninja

Nå, som root bruker:

ninja install

Siden -D ENABLE_DOCUMENTATION=OFF alternativet brukes, dokumentasjonen er ikke gjenoppbygd eller installert nå. Hvis du trenger dokumentasjon, kan du enten installere Gi-DocGen-2024.1 og fjern dette alternativet fra cmake kommandoen, eller installer den forhåndsbygde dokumentasjonen (kun for GTK-4-versjonen) i stedet:

install -vdm755 /usr/share/gtk-doc/html &&
cp -rv ../Documentation/* /usr/share/gtk-doc/html

Parameterforklaringer

-D CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør at cmake fjerner hardkodede biblioteksøkebaner (rpath) når du installerer en binær kjørbar fil eller et delt bibliotek. Denne pakken trenger ikke rpath når den først er installert i standard plassering, og rpath kan noen ganger forårsake uønskede effekter eller til og med sikkerhetsproblemer.

-D USE_LIBBACKTRACE=OFF: Denne bryteren deaktiverer bruken av libbacktrace for å dumpe en stabelsporing ved krasj skjer. Du må installere libbacktrace hvis du ønsker å aktivere det (erstatte OFF med ON eller bare fjerne bryteren).

-D USE_LIBHYPHEN=OFF: Denne bryteren deaktiverer standard implementering av automatisk orddeling. Du må installere Hyphen hvis du ønsker å aktivere den (erstatte OFF med ON eller bare fjern bryteren).

-D ENABLE_DOCUMENTATION=OFF: Denne bryteren deaktiverer regenerering av dokumentasjonenen. Fjern denne bryteren hvis du har Gi-DocGen-2024.1 installert og ønsker å regenerere dokumentasjonen.

-D ENABLE_GAMEPAD=OFF: Denne bryteren deaktiverer støtte for gamepad. Fjern denne bryteren hvis du har libmanette installert og ønsker å aktivere den.

-D ENABLE_MINIBROWSER=ON: Denne bryteren aktiverer kompilering og installasjon av MiniBrowser.

-D ENABLE_WEBDRIVER=OFF: Denne bryteren deaktiverer kompilering og installasjon av WebKitWebDriver. Vi bruker det for GTK-3 bygget fordi WebKitWebDriver fra GTK-3-bygget vil uansett bli overskrevet av GTK-4-bygget. Fjern dette alternativet hvis du ikke planlegger å bygge denne pakken med GTK-4.

-D ENABLE_BUBBLEWRAP_SANDBOX=ON: Denne bryteren aktiverer Bubblewrap sandkassen, som bidrar til å dempe virkningen av de fleste sikkerhetssårbarheter i denne pakken. Endre denne bryteren til OFF hvis du ikke vil installere bubblewrap-0.11.0, libseccomp-2.5.5, eller xdg-dbus-proxy-0.1.6, men merk at dette kan sette deg i fare.

-D ENABLE_JOURNALD_LOG=OFF: Denne bryteren deaktiverer bruk av systemd journal for logging av feil og feilsøkingsinformasjon siden den ikke er tilgjengelig på SysV systemer.

-D USE_SYSPROF_CAPTURE=NO: Denne bryteren deaktiverer en hard avhengighet av sysprof.

-D USE_SYSTEM_MALLOC=ON: Denne bryteren gjør det mulig å bygge mot systemets installerte malloc.

-D ENABLE_GEOLOCATION=OFF: Bruk denne bryteren hvis du ikke ønsker å installere GeoClue-2.7.2.

-D USE_AVIF=OFF: Bruk denne bryteren hvis du ikke vil installere libavif-1.1.1. Merk at du ikke vil ha støtte for AVIF bilder hvis du gjør dette.

-D USE_WOFF2=ON: Bruk denne bryteren hvis den valgfrie pakken WOFF2-1.0.2 er installert. Dette legger til ekstra støtte for fonter.

-D USE_JPEGXL=OFF: Bruk denne bryteren hvis den anbefalte pakken libjxl-0.11.0 ikke er installert. Merk at du ikke vil har støtte for JPEG XL bilder hvis dette alternativet er brukt.

Innhold

Installert Program: WebKitWebDriver
Installerte Biblioteker: libjavascriptcoregtk-4.1.so, libjavascriptcoregtk-6.0.so, libwebkit2gtk-4.1.so, og libwebkitgtk-6.0.so
Installerte Mapper: /usr/include/webkitgtk-4.1, /usr/include/webkitgtk-6.0, /usr/lib{,exec}/webkit2gtk-4.1, /usr/lib{,exec}/webkitgtk-6.0, /usr/share/gtk-doc/html/{jsc-glib,webkit2gtk{,-web-extension}}-4.1 (valgfri), og /usr/share/gtk-doc/html/{jsc-glib,webkit2gtk{,-web-process-extension}}-6.0

Korte Beskrivelser

WebKitWebDriver

tillater feilsøking og automatisering av nettsider og nettlesere

libjavascriptcoregtk-4.1.so

inneholder kjerne JavaScript API funksjoner som brukes av jsc og libwebkit2gtk-4.1

libjavascriptcoregtk-6.0.so

inneholder kjerne JavaScript API funksjoner som brukes av jsc og libwebkitgtk-6.0

libwebkit2gtk-4.1.so

inneholder WebKit2 API funksjoner

libwebkitgtk-6.0.so

inneholder WebKit API funksjoner for GTK-4 applikasjoner