This is targeted for Windows users (who wish to build outside of a docker container - which BTW is still the preferred way to build the image)
- git clone envoy (or your fork) on your Windows box
- Setup a Ubuntu 19.10 on VirtualBox (try osboxes) -This might help
- Map your clone envoy to your VM (shared folder between you host and guest OS) - or just clone within the VM
- Run commands from here https://github.com/envoyproxy/envoy/blob/4b6e81c112e204ef04445318d2cbfa168cf22ca7/bazel/README.md
sudo apt-get install build-essential sudo wget -O /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/download/v0.0.8/bazelisk-linux-amd64 sudo chmod +x /usr/local/bin/bazel git clone https://github..../envoy.git cd envoy // the directory with the WORKSPACE file bazel build -c opt //source/exe:envoy-static
- You'll run into couple of issues regarding autoreconf and something like this -undefined macro: AC_PROG_LIBTOOL
So, now run
sudo apt-get install autoconf sudo apt-get install libtool sudo apt-get install cmake sudo apt-get install ninja-build
and then
bazel build -c opt //source/exe:envoy-static
again
And then, after a really really long time (in my case 5 hours!)
INFO: From CcCmakeMakeRule bazel/foreign_cc/curl/include: Target //source/exe:envoy-static up-to-date: bazel-bin/source/exe/envoy-static INFO: Elapsed time: 18380.931s, Critical Path: 662.90s INFO: 3364 processes: 3364 linux-sandbox. INFO: Build completed successfully, 4240 total actions rkbalgi@osboxes:~/envoy$ bazel-bin/source/exe/envoy-static --version bazel-bin/source/exe/envoy-static version: 3adf14af5ca9f34221d59d693b173d20b27c1614/1.14.0-dev/Clean/RELEASE/BoringSSL rkbalgi@osboxes:~/envoy$
References