#### Beyond Linux® From Scratch (systemd Edition) - Version r13.0-491

### Chapter 17. Networking Libraries

- Prev

  libslirp-4.9.1

- Next

  libtirpc-1.3.7

- Up
- Home

# libsoup-3.6.6

## Introduction to libsoup3

The libsoup3 is a HTTP client/server library for GNOME. It uses GObject and the GLib main loop to integrate with GNOME applications and it also has an asynchronous API for use in threaded applications.

### Note

Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

### Package Information

- Download (HTTP): https://download.gnome.org/sources/libsoup/3.6/libsoup-3.6.6.tar.xz

- Download MD5 sum: 9e07742595800ecf301eafb52300dd89

- Download size: 1.5 MB

- Estimated disk space required: 42 MB (with tests)

- Estimated build time: 0.4 SBU (Using parallelism=4; with tests)

### Additional Downloads

- Required patch: https://www.linuxfromscratch.org/patches/blfs/svn/libsoup-3.6.6-upstream_fixes-1.patch

### libsoup3 Dependencies

#### Required

glib-networking-2.80.1, libpsl-0.21.5, libxml2-2.15.3, and nghttp2-1.69.0

#### Recommended

GLib-2.88.0 (with GObject Introspection) and Vala-0.56.19

#### Optional

Apache-2.4.66 (required to run the test suite), Brotli-1.2.0, cURL-8.19.0 (required to run the test suite), Gi-DocGen-2026.1, MIT Kerberos V5-1.22.2 (required to run the test suite), PHP-8.5.5 compiled with XMLRPC-EPI support (only used for the XMLRPC regression tests), Samba-4.24.0 (ntlm_auth is required to run the test suite), sysprof, and wstest

## Installation of libsoup3

First, fix a security vulnerability that could lead to credential leakage:

    patch -Np1 -i ../libsoup-3.6.6-upstream_fixes-1.patch

Fix the installation path of API documentation:

    sed 's/apiversion/soup_version/' -i docs/reference/meson.build

Install libsoup3 by running the following commands:

    mkdir build &&
    cd    build &&

    meson setup --prefix=/usr          \
                --buildtype=release    \
                --wrap-mode=nofallback \
                ..                     &&
    ninja

To test the results, issue: ninja test.

Now, as the `root` user:

    ninja install

## Command Explanations

`--buildtype=release`: Specify a buildtype suitable for stable releases of the package, as the default may produce unoptimized binaries.

`--wrap-mode=nofallback`: This switch prevents meson from using subproject fallbacks for any dependency declarations in the build files, preventing it from downloading any optional dependencies which are not installed on the system.

`-D docs=enabled`: If Gi-DocGen-2026.1 is installed, the API documentation will be built and installed no matter if this option is used or not. This option causes the meson command to fail if Gi-DocGen-2026.1 is not installed.

## Contents

Installed Programs: None
Installed Libraries: libsoup-3.0.so
Installed Directories: /usr/include/libsoup-3.0, /usr/share/doc/libsoup-3.6.6 (only installed if gi-docgen is available)

### Short Descriptions

`libsoup-3.0.so` | provides functions for asynchronous HTTP connections

- Prev

  libslirp-4.9.1

- Next

  libtirpc-1.3.7

- Up
- Home