Install Tendermint¶
From Binary¶
To download pre-built binaries, see the Download page.
From Source¶
You’ll need go
, maybe dep, and the Tendermint source code.
Install Go¶
Make sure you have installed Go and
set the GOPATH
. You should also put GOPATH/bin
on your PATH
.
Get Source Code¶
You should be able to install the latest with a simple
go get github.com/tendermint/tendermint/cmd/tendermint
Run tendermint --help
and tendermint version
to ensure your
installation worked.
If the installation failed, a dependency may have been updated and become
incompatible with the latest Tendermint master branch. We solve this
using the dep
tool for dependency management.
First, install dep
:
cd $GOPATH/src/github.com/tendermint/tendermint
make get_tools
Now we can fetch the correct versions of each dependency by running:
make get_vendor_deps
make install
Note that even though go get
originally failed, the repository was
still cloned to the correct location in the $GOPATH
.
The latest Tendermint Core version is now installed.
Reinstall¶
If you already have Tendermint installed, and you make updates, simply
cd $GOPATH/src/github.com/tendermint/tendermint
make install
To upgrade, there are a few options:
- set a new
$GOPATH
and rungo get github.com/tendermint/tendermint/cmd/tendermint
. This makes a fresh copy of everything for the new version. - run
go get -u github.com/tendermint/tendermint/cmd/tendermint
, where the-u
fetches the latest updates for the repository and its dependencies - fetch and checkout the latest master branch in
$GOPATH/src/github.com/tendermint/tendermint
, and then runmake get_vendor_deps && make install
as above.
Note the first two options should usually work, but may fail. If they
do, use dep
, as above:
cd $GOPATH/src/github.com/tendermint/tendermint
make get_vendor_deps
make install
Since the third option just uses dep
right away, it should always
work.
Troubleshooting¶
If go get
failing bothers you, fetch the code using git
:
mkdir -p $GOPATH/src/github.com/tendermint
git clone https://github.com/tendermint/tendermint $GOPATH/src/github.com/tendermint/tendermint
cd $GOPATH/src/github.com/tendermint/tendermint
make get_tools
make get_vendor_deps
make install
Run¶
To start a one-node blockchain with a simple in-process application:
tendermint init
tendermint node --proxy_app=kvstore