ngtcp2 - Implementation of the RFC9000 QUIC protocol ChangeLog

HOWTO


# ngtcp2 1.4.0
# ============
# pkg-config >= 0.20
# CUnit >= 2.1 (for unit test framework)
# jemalloc
## And for the examples:
# libev
# nghttp3
# Compiler with C++20 support
# Brotli (optional)
## At least one of these:
# quictls
# GnuTLS >= 3.7.5
# BoringSSL
# aws-lc >= 1.19.0
# Picotls
# wolfSSL >= 5.5.0

# GitHub ngtcp2 v1.4.0
# ChangeLog 0.19.0 to 1.4.0
# ngtcp2 documentation
# RFC 9000

# Get the tarball
cd
test -f installed/ngtcp2-1.4.0.tar.xz &&
mv -f installed/ngtcp2-1.4.0.tar.xz .
test ! -f ngtcp2-1.4.0.tar.xz &&
wget https://github.com/ngtcp2/ngtcp2/releases/download/v1.4.0/\
ngtcp2-1.4.0.tar.xz

# Verify tarball w/ sha256sum:
# (came from GitHub release checksums.txt)
echo "b5d1433b9f5c06ce249e1e390e97dcfa49bf7ada5cb7c8bed8e6cd4feaf1ca\
4a  ngtcp2-1.4.0.tar.xz" | sha256sum -c

# Verify tarball w/ gpg:
( gpg --list-keys 516B622918D15C478AB1EA3A5339A2BE82E07DEC > \
/dev/null 2>&1 ||
gpg --keyserver keyserver.ubuntu.com \
--recv-keys 516B622918D15C478AB1EA3A5339A2BE82E07DEC ) &&
wget -nc https://github.com/ngtcp2/ngtcp2/releases/download/v1.4.0/\
ngtcp2-1.4.0.tar.xz.asc &&
gpg --verify ngtcp2-1.4.0.tar.xz.asc && rm ngtcp2-1.4.0.tar.xz.asc

# Extract the tarball
mkdir -p -m 00700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "ngtcp2-*" exec rm -r {} \;
tar xJvf ~/ngtcp2-1.4.0.tar.xz
cd ngtcp2-1.4.0
test $UID = 0 && chown -R root:root .

# Read README.rst

# Configure the build for 64-bit
test $(uname -m) = 'x86_64' &&
./configure --docdir=/usr/local/doc/ngtcp2-1.4.0 --libdir=/usr/local/lib64 \
--with-gnutls

# Configure the build for anything else
test $(uname -m) != 'x86_64' &&
./configure --docdir=/usr/local/doc/ngtcp2-1.4.0 --with-gnuutls

# Build it
make

# Check the build
make check

# Become root to install it
su

# Remove old version doc directories
test -d /usr/local/doc/ngtcp2 && rm -r /usr/local/doc/ngtcp2
find /usr/local/doc -maxdepth 1 -type d -name "ngtcp2-*" -exec rm -r {} \;

# Install it
make install
ldconfig

# Become your non-root user again
exit

# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/ngtcp2-*.tar.*
mv ngtcp2-1.4.0.tar.xz installed/


# If you ever want to uninstall ngtcp2, this should do it:
# ('make uninstall' from the configured source as root may be enough)
cd
su
test -d src/ngtcp2-* && ( cd src/ngtcp2-* ; make uninstall )
test -d /usr/local/doc/ngtcp2 && rm -r /usr/local/doc/ngtcp2
find /usr/local/doc -maxdepth 1 -type d -naem "ngtcp2-*" exec rm -r {} \;
test -d /usr/local/include/ngtcp2 && rm -r /usr/local/include/ngtcp2
( cd /usr/local/lib
  rm -f libngtcp2.* pkgconfig/libngtcp2.pc )
test -d /usr/local/lib64 &&
( cd /usr/local/lib64
   rm -f libngtcp2.* pkgconfig/libngtcp2.pc )
test -d /usr/local/share/doc/ngtcp2 rm -r /usr/local/share/doc/ngtcp2
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "ngtcp2-*" -exec rm -r {} \;
rm -f ~/installed/ngtcp2-*.tar.*

List of HOWTOs

Web page itself last updated: 2023-12-20 8:06pm (EDT -0400)
HOWTO last updated: 2024-04-05 3:37pm
Copyright © 2001-2024 Jason Englander. All Rights reserved.
[HTML5]