You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
boundary/website/content/docs/developing/building.mdx

39 lines
1.5 KiB

---
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 dev`
The first time you run `make dev` 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 `<repo path>/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 [XC_OSARCH](https://github.com/hashicorp/boundary/blob/master/scripts/build.sh#L26)
environment variable to set this. Example: `$ XC_OSARCH=linux/amd64 make dev`
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.