SWEet

A Software Engineer Is Eating Technologies

Envoy ビルドメモ

妙に詰まったのでメモ

環境

GCE: Ubuntu 16.04 Goインストール済み

手順

justiceboi.github.io

まず, clang-9 + llvm を入れる(7.0以上が条件らしい)

依存パッケージインストール

{
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install \
   libtool \
   cmake \
   automake \
   autoconf \
   make \
   ninja-build \
   curl \
   unzip \
   virtualenv
}

リポジトリクローンとビルドコンフィグの設定

git clone https://github.com/envoyproxy/envoy
cd envoy
echo "build --config=clang" >> ./tools/bazel.rc
echo 'build --action_env=PATH="/usr/local/bin:/opt/local/bin:/usr/bin:/bin"' >> ./tools/bazel.rc

go get -u github.com/bazelbuild/buildtools/buildifier && export BUILDIFIER_BIN=$GOPATH/bin/buildifier
go get -u github.com/bazelbuild/buildtools/buildozer && export BUILDOZER_BIN=$GOPATH/bin/buildozer

ビルド

bazel build //source/exe:envoy-static

初回は超長い