diff --git a/PLATFORMS.md b/PLATFORMS.md index 405871a331..6a3d052dbd 100644 --- a/PLATFORMS.md +++ b/PLATFORMS.md @@ -12,8 +12,13 @@ In general, this version of BIND will build and run on any POSIX-compliant system with a C11-compliant C compiler, BSD-style sockets with RFC-compliant -IPv6 support, POSIX-compliant threads, the `libuv` asynchronous I/O library, -the OpenSSL cryptography library, and the `nghttp2` HTTP/2 library. +IPv6 support, and POSIX-compliant threads, plus the following mandatory +libraries: + +- `libuv` for asynchronous I/O operations and event loops +- `libssl` and `libcrpyto` from OpenSSL for cryptography +- `libjemalloc` for memory allocation +- `libnghttp2` for HTTP/2 The following C11 features are used in BIND 9: @@ -31,13 +36,17 @@ some of the older systems listed below, you will have to install an updated updated packages. The other option is to build and install `libuv` from source. -Certain optional BIND features have additional library dependencies: +Certain optional BIND features have additional library dependencies. +These include: * `libfstrm` and `libprotobuf-c` for DNSTAP -* `libidn2` for internationalized domain name conversion. +* `libidn2` for display of internationalized domain names in `dig` +* `libjson-c` for JSON statistics * `libmaxminddb` for geolocation * `libnghttp2` for DNS over HTTPS -* `libxml2` and `libjson-c` for statistics channel +* `libxml2` for XML statistics +* `libz` for compression of the HTTP statistics channel +* `readline` for line editing in `nsupdate` and `nslookup` ISC regularly tests BIND on many operating systems and architectures, but lacks the resources to test all of them. Consequently, ISC is only able to diff --git a/README.md b/README.md index cce47bc687..f85910ddbb 100644 --- a/README.md +++ b/README.md @@ -125,13 +125,13 @@ including your patch as an attachment, preferably generated by At a minimum, BIND requires a Unix or Linux system with an ANSI C compiler, basic POSIX support, and a 64-bit integer type. BIND also requires the -`libuv` asynchronous I/O library, the `nghttp2` HTTP/2 library, and a -cryptography provider library such as OpenSSL or a hardware service -module supporting PKCS#11. On Linux, BIND requires the `libcap` library -to set process privileges, though this requirement can be overridden by -disabling capability support at compile time. See [Compile-time -options](#opts) below for details on other libraries that may be -required to support optional features. +`libuv` asynchronous I/O library, the `nghttp2` HTTP/2 library, the +`jemalloc` memory allocation library, and the OpenSSL cryptography +library. On Linux, BIND requires the `libcap` library to set process +privileges, though this requirement can be overridden by disabling +capability support at compile time. See [Compile-time options](#opts) +below for details on other libraries that may be required to support +optional features. Successful builds have been observed on many versions of Linux and Unix, including RHEL/CentOS, Fedora, Debian, Ubuntu, SLES, openSUSE,