BLFS Networking Libraries

libevent

由于我需要安装 tmux多会话终端管理 依赖 libeventncurses

安装 libevent
cd /sources

libevent_VERSION=2.1.12
tar xf libevent-${libevent_VERSION}-stable.tar.gz
cd libevent-${libevent_VERSION}-stable

# 修复event_rpcgen.py
sed -i 's/python/&3/' event_rpcgen.py

./configure --prefix=/usr --disable-static &&
make

make install

libtirpc

备注

lsof 依赖 libtirpc

安装 libtirpc
cd /sources

libtirpc_VERSION=1.3.5
tar xf libtirpc-${libtirpc_VERSION}.tar.bz2
cd libtirpc-${libtirpc_VERSION}

./configure --prefix=/usr                                   \
            --sysconfdir=/etc                               \
            --disable-static                                \
            --disable-gssapi                                &&
make

make install

libunistring

安装 libunistring
cd /sources

libunistring_VERSION=1.2
tar xf libunistring-${libunistring_VERSION}.tar.xz
cd libunistring-${libunistring_VERSION}

./configure --prefix=/usr    \
            --disable-static \
            --docdir=/usr/share/doc/libunistring-${libunistring_VERSION} &&
make

make check
make install

libidn2

安装 libidn2
cd /sources

libidn2_VERSION=2.3.7
tar xf libidn2-${libidn2_VERSION}.tar.gz
cd libidn2-${libidn2_VERSION}

./configure --prefix=/usr --disable-static &&
make
make check
make install

libpsl

备注

cURL 强烈建议安装libpsl 以实现安全

libpsl包提供了访问和解析Public Suffix List(PSL)的库,这个PSL是标准后缀(例如.com)以外的一组域名。 curl 安装强烈建议安装libpsl

安装 libpsl
cd /sources

libpsl_VERSION=0.21.5
tar xf libpsl-${libpsl_VERSION}.tar.gz
cd libpsl-${libpsl_VERSION}

mkdir build &&
cd    build &&

meson setup --prefix=/usr --buildtype=release &&
ninja

ninja install

libslirp

备注

qemu 建议依赖 libslirp

libslirp 是用户模式网络库,用于虚拟机,容器和不同工具

安装 libslirp
cd /sources

libslirp_VERSION=4.8.0
tar xf libslirp-v${libslirp_VERSION}.tar.bz2
cd libslirp-v${libslirp_VERSION}

mkdir build &&
cd    build &&

meson setup --prefix=/usr --buildtype=release .. &&

ninja

ninja test

ninja install

nghttp2

备注

  • curl建议依赖

  • cmake建议依赖

安装 nghttp2
cd /sources

nghttp2_VERSION=1.62.1
tar xf nghttp2-${nghttp2_VERSION}.tar.xz
cd nghttp2-${nghttp2_VERSION}

./configure --prefix=/usr     \
            --disable-static  \
            --enable-lib-only \
            --docdir=/usr/share/doc/nghttp2-${nghttp2_VERSION} &&
make

make install

curl

安装 curl
cd /sources

curl_VERSION=8.9.1
tar xf curl-${curl_VERSION}.tar.xz
cd curl-${curl_VERSION}

./configure --prefix=/usr                           \
            --disable-static                        \
            --with-openssl                          \
            --enable-threaded-resolver              \
            --with-ca-path=/etc/ssl/certs &&
make

make install &&

rm -rf docs/examples/.deps &&

find docs \( -name Makefile\* -o  \
             -name \*.1       -o  \
             -name \*.3       -o  \
             -name CMakeLists.txt \) -delete &&

cp -v -R docs -T /usr/share/doc/curl-${curl_VERSION}