Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

This page documents the requirements and special instructions for building Traffic Server on macOS.

...

After you have PCRE development libraries installed on your system, you should get the Traffic Server code with git.

Code Block
langnone
$ git clone https://github.com/apache/trafficserver.git

...

Code Block
langnone
$ make
$ sudo make install

Generates a compilation database for clang tooling with Bear

JSON Compilation Database ( compile_commands.json ) is used by clang based tools.   For autotools based project (like Traffic Server), Bear is a tool that generates a compilation database.

On macOS or Fedora there is a know issue that bear generates empty compilation database because of SIP. Below is instruction to avoid the issue. Assuming above instruction is done. (automake autoconf libtool are already installed).

In short, all building tool chain should not be under certain directories which is protected by SIP. 

Code Block
langnone
$ cp /bin/sh /usr/loca/bin/
$ brew install bear llvm make
$ which clang clang++ gmake
/usr/local/opt/llvm/bin/clang
/usr/local/opt/llvm/bin/clang++
/usr/local/bin/gmake
$ CONFIG_SHELL=/usr/local/bin/sh CC=clang CXX=clang++ ./configure --ADD-OPTIONS-YOU-WANT
$ bear gmake 
  • Mac Ports - package retrieval and installation system.
  • Homebrew - package retrieval and installation system.
  • Xcode - if you want to use the latest version of GCC from Apple. Requires free registration to get to the download page.
  • PCRE - required software for building Traffic Server from the source.