How to Build Brotli From Source on CentOS 7

Updated on May 17, 2019
How to Build Brotli From Source on CentOS 7 header image

Brotli is a new compression method with a better compression ratio than Gzip. Its source code is publicly hosted on Github. This guide will show you the commands you need to run and build Brotli from source code on CentOS 7.

Before you begin

Check the CentOS version.

cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)

Create a new non-root user account with sudo access and switch to it.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

NOTE: Replace johndoe with your username.

Set up the timezone.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Ensure that your system is up to date.

sudo yum check-update; sudo yum update -y

Build Brotli

Install build tools and required packages.

sudo yum install -y gcc make bc sed autoconf automake libtool git

Clone the Brotli repository.

git clone https://github.com/google/brotli.git

Navigate to the Brotli source directory.

cd brotli

Create a manual page for Brotli commands.

sudo cp ~/brotli/docs/brotli.1 /usr/share/man/man1 && sudo gzip /usr/share/man/man1/brotli.1

Check the manual page.

man brotli

To generate Autotools' configure file, first run the ./bootstrap command.

./bootstrap

After the command above, you will have access to the usual C program build steps: configure, make and make install.

For help, run the ./configure --help command.

Now, build Brotli.

./configure --prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/lib64/brotli --libdir=/usr/lib64/brotli --datarootdir=/usr/share --mandir=/usr/share/man/man1 --docdir=/usr/share/doc
make
sudo make install

After the successful build process, you can check the version.

brotli --version
# brotli 1.0.7

That's it. You have successfully built Brotli from source code. You can now compress and decompress your files with Brotli compression format on your server.