This was tested on Ubuntu 16.04.
Install aptitude managed dependencies:
$ sudo apt install -y ant openjdk-8-jdk python2.7
$ git clone https://github.com/facebook/watchman.git $ cd watchman/ $ sudo apt-get install -y autoconf automake build-essential python-dev $ ./autogen.sh $ ./configure $ sudo make install
$ git clone https://github.com/facebook/buck.git $ cd buck $ ant $ .\bin\buck build --show-output buck
gen-buck-info: ... [exec] TypeError: Object of type 'bytes' is not JSON serializable
If the above command completes successfully, you will have the buck executable located at ./bin/buck. This build system does not install it into system folders on your machine, so you will probably want to add ./bin/buck to your path so you can just type buck at the command line.
The most basic Buck-based project example requires two Buck specific files: .buckconfig and a BUCK file.
An example C++ project built using Buck can be found on GitHub at https://github.com/njlr/buck-cpp-example.