2020-09-24 10:14:25 -07:00
---
layout: docs
page_title: Documentation
description: Building Boundary
---
# Building Boundary
2020-09-25 14:11:04 -07:00
Building Boundary from source requires:
2020-09-24 10:14:25 -07:00
2020-10-12 13:33:17 -04:00
- [Go](https://golang.org/dl/) 1.14 or greater. (Note that HashiCorp currently develops against Go 1.15.)
2020-09-24 10:14:25 -07:00
- `make` installed
- [Docker](https://docs.docker.com/get-docker/) installed
- Basic development environment (git, xcode if you're on Mac, etc)
2020-09-25 23:17:42 -07:00
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`
2022-03-16 16:39:53 -04:00
3. `$ make install`
2020-09-24 10:14:25 -07:00
2022-03-16 16:39:53 -04:00
The first time you run `make install` it will build UI assets, which will take a
2020-10-12 13:33:17 -04:00
long time. After the initial build, you can update those assets to the
currently-pinned version via `make build-ui`.
2020-09-24 10:14:25 -07:00
Once you've built Boundary, the binary will be available at `<repo path>/bin/boundary`. Move this
binary to somewhere in your `$PATH` such as `/usr/local/bin`.
## Cross Platform Build
2022-01-12 14:16:00 -05:00
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)
2022-03-16 16:39:53 -04:00
environment variable to set this. Example: `$ GOOS=linux GOARCH=amd64 make install`
2020-09-24 10:14:25 -07:00
For more details, please consult the [Boundary project on GitHub](https://github.com/hashicorp/boundary#build-and-start-boundary-in-dev-mode).
2020-10-09 16:18:58 -04:00
## Troubleshooting
UI assets are built inside a Docker container. If this build step fails, try
increasing memory and swap available to Docker.