This replaces references to XC_OSARCH with GOOS and GOARCH.
See: 1c8e0ed1e1
39 lines
1.5 KiB
Plaintext
39 lines
1.5 KiB
Plaintext
---
|
|
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 [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 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.
|