This page documents the requirements and special instructions for building Traffic Server on Debian. For more details about the configuration process, plesae refer to the Installation and Configuration page.

NOTE: This was copied from Ubuntu page, we might need to update the packages here!

Debian 9

Generally you use apt-get to get the dependencies for you:
 

 $ sudo apt-get build-dep trafficserver

The packages you will get for apt-get build-dep are:

autoconf automake autotools-dev bison debhelper dh-apparmor flex gettext intltool-debian libbison-dev libcap-dev
libexpat1-dev libfl-dev libpcre3-dev libpcrecpp0 libsigsegv2 libsqlite3-dev libssl-dev libtool m4 po-debconf
tcl-dev tcl8.6-dev zlib1g-dev

Unfortunately hwloc and libunwind are not included in the default dependencies list for 14.04 as of now, you can install them with apt-get:

 $ sudo apt-get install libhwloc-dev libhwloc5 libunwind8 libunwind8-dev

Debian 8

The following packages must be installed:

 sudo apt-get install g++ make pkg-config libssl-dev tcl-dev libexpat1-dev libpcre3-dev libmodule-install-perl

It's also recommended that the following packages are installed, but they are not required (and they come pre-installed on many systems):

 sudo apt-get install libcap-dev libcap2 hwloc libhwloc-dev

To enable WCCP you will need flex and bison. These should be recent enough to work.

 sudo apt-get install bison flex

ATS v8.0 and later

For ATS v8.0.0 and later, a compiler with support for C++17 is required. You can install this using the testing repo on both Debian 8 and 9:

# This is optional, but prevents apt-get upgrade from upgrading everything from testing. We recommend doing this!
$ cat > /etc/apt/preferences.d/testing
Package: *
Pin: release a=testing
Pin-Priority: 50
 
$ sudo cat >> /etc/apt/sources.list
deb http://deb.debian.org/debian testing main
$ apt-get update
$ apt-get -t testing install linux-compiler-gcc-7-x86 g++-7

ATS v9.0 and later

For ATS v9.0.0 and later, OpenSSL v1.0.2 is required. For this, you can use the testing repo above (which pulls in a much more modern OpenSSL, currently v1.1.1a),and upgrade OpenSSL. Or  for less invasive changes, use the jessie-backports repo:

# You can do a similar pinning as above, but I didn't bother
$ sudo cat >> /etc/apt/sources.list
deb http://deb.debian.org/debian jessie-backports main
$ apt-get update
$ apt-get -t jessie-backports dist-upgrade # Yeh, this will pull in a bunch of things, but seemed reasonable
# Alternatively, just install the openssl package

# Update: As of late, the sources.list should look like 
deb http://cdn-fastly.deb.debian.org/debian/ jessie main
deb-src http://cdn-fastly.deb.debian.org/debian/ jessie main

deb http://security.debian.org/ jessie/updates main
deb-src http://security.debian.org/ jessie/updates main

deb http://archive.debian.org/debian jessie-backports main
deb-src http://archive.debian.org/debian jessie-backports main

# And in /etc/apt/apt.conf
Acquire::Check-Valid-Until "false";


Git

To use Git, you must install the appropriate packages:

 sudo apt-get install git git-core

For more details how to use Git with our source, please see our GitHub page.

configure and build

For more details, see the Building page

 ./configure && make