--- layout: docs page_title: Documentation description: Building Boundary --- # Building Boundary Building Boundary from source requires: - [Go](https://golang.org/dl/) 1.14 or greater. (Note that HashiCorp currently develops against Go 1.15.) - `make` installed - [Docker](https://docs.docker.com/get-docker/) installed - Basic development environment (git, xcode if you're on Mac, etc) 1. `$ git clone https://github.com/hashicorp/boundary` or if you're using SSH auth for github, `$ git clone git@github.com:hashicorp/boundary` 2. `$ cd boundary` 3. `$ make install` The first time you run `make install` it will build UI assets, which will take a long time. After the initial build, you can update those assets to the currently-pinned version via `make build-ui`. Once you've built Boundary, the binary will be available at `/bin/boundary`. Move this binary to somewhere in your `$PATH` such as `/usr/local/bin`. ## Cross Platform Build If you need to cross compile boundary for another OS or architecture, use the [GOOS and GOARCH](https://github.com/hashicorp/boundary/blob/master/scripts/build.sh#L26) environment variable to set this. Example: `$ GOOS=linux GOARCH=amd64 make install` For more details, please consult the [Boundary project on GitHub](https://github.com/hashicorp/boundary#build-and-start-boundary-in-dev-mode). ## Troubleshooting UI assets are built inside a Docker container. If this build step fails, try increasing memory and swap available to Docker.