Introduction to Serf

The Serf package contains a C-based HTTP client library built upon the Apache Portable Runtime (APR) library. It multiplexes connections, running the read/write communication asynchronously. Memory copies and transformations are kept to a minimum to provide high performance operation.

This package is known to build and work properly using an LFS-7.7 platform.

Package Information

Serf Dependencies


Apr-Util-1.5.4, OpenSSL-1.0.2, and SCons-2.3.4


MIT Kerberos V5-1.13.1, for the GSSAPI

User Notes:

Installation of Serf

Install Serf by running the following commands:

sed -i "/Append/s:RPATH=libdir,::"   SConstruct &&
sed -i "/Default/s:lib_static,::"    SConstruct &&
sed -i "/Alias/s:install_static,::"  SConstruct &&
scons PREFIX=/usr

If you wish to run the test suite, fix one file:

sed -i test/test_buckets.c \
    -e 's://\(    buf_size = orig_len + (orig_len / 1000) + 12;\):/\*\1\ */:'

To test the results, issue: scons check. With above fix, 1 out of 65 tests still fails for unknown reasons.

Now, as the root user:

scons PREFIX=/usr install

Command Explanations

sed -i "...": The first command removes the runtime path from a shared library and the next two commands disable building and installing of the static library.

GSSAPI=/usr: Use this switch if you have installed a GSSAPI library and you want serf to use it.


Installed Programs: None
Installed Library:
Installed Directory: /usr/include/serf-1

Short Descriptions

contains the Serf API functions.

Last updated on 2015-02-20 13:15:05 -0800