--- layout: docs page_title: Build Vault from code description: >- Build Vault locally from source code. --- # Build Vault from code Clone the official Vault repo and build a Vault binary from source code for your system. - You have [Go](https://golang.org) installed and the `GOPATH` environment variable configured. - You have [`git`](https://www.git-scm.com/) installed. 1. Create a `hashicorp` source directory under your `GOPATH` and change to the new directory: ```shell-session $ mkdir -p ${GOPATH}/src/hashicorp && cd $_ ``` 1. Clone the Vault repository from GitHub: ```shell-session $ git clone https://github.com/hashicorp/vault.git ``` 1. Change to the cloned Vault directory: ```shell-session $ cd vault ``` 1. Bootstrap the Go project to download and compile the libraries and tools needed to compile Vault: ```shell-session $ make bootstrap ``` 1. Use `make` to build Vault for your current system: ```shell-session $ make dev ``` You can copy the compiled binary from `${GOPATH}/src/hashicorp/vault/bin/`. 1. Create a `hashicorp` source directory under your `GOPATH` and change to the new directory: ```powershell New-Item -ItemType Directory -Force -Path "${env:GOPATH}/src/hashicorp" | Set-Location ``` 1. Clone the Vault repository from GitHub: ```powershell git clone https://github.com/hashicorp/vault.git ``` 1. Change to the cloned Vault directory: ```powershell Set-Location vault ``` 1. Use the included `make` tool to bootstrap the Go project to download and compile the libraries and tools needed to compile Vault: ```powershell .\make bootstrap ``` 1. Use the included `make` tool to build Vault for your current system: ```powershell .\make dev ``` You can copy the compiled binary from `${env:GOPATH}/src/hashicorp/vault/bin/`.