To download pre-built binaries, see the releases page.
You’ll need go
installed and the required
environment variables set, which can be done with the following commands:
echo export GOPATH=\"\$HOME/go\" >> ~/.bash_profile
echo export PATH=\"\$PATH:\$GOPATH/bin\" >> ~/.bash_profile
git clone https://github.com/cometbft/cometbft.git
cd cometbft
make install
to put the binary in $GOPATH/bin
or use:
make build
to put the binary in ./build
.
DISCLAIMER The binary of CometBFT is build/installed without the DWARF
symbol table. If you would like to build/install CometBFT with the DWARF
symbol and debug information, remove -s -w
from BUILD_FLAGS
in the make
file.
The latest CometBFT is now installed. You can verify the installation by running:
cometbft version
To start a one-node blockchain with a simple in-process application:
cometbft init
cometbft node --proxy_app=kvstore
If you already have CometBFT installed, and you make updates, simply
make install
To upgrade, run
git pull origin main
make install
Install LevelDB (minimum version is 1.7).
Install LevelDB with snappy (optionally). Below are commands for Ubuntu:
sudo apt-get update
sudo apt install build-essential
sudo apt-get install libsnappy-dev
wget https://github.com/google/leveldb/archive/v1.20.tar.gz && \
tar -zxvf v1.20.tar.gz && \
cd leveldb-1.20/ && \
make && \
sudo cp -r out-static/lib* out-shared/lib* /usr/local/lib/ && \
cd include/ && \
sudo cp -r leveldb /usr/local/include/ && \
sudo ldconfig && \
rm -f v1.20.tar.gz
Set a database backend to cleveldb
:
# config/config.toml
db_backend = "cleveldb"
To install CometBFT, run:
CGO_LDFLAGS="-lsnappy" make install COMETBFT_BUILD_OPTIONS=cleveldb
or run:
CGO_LDFLAGS="-lsnappy" make build COMETBFT_BUILD_OPTIONS=cleveldb
which puts the binary in ./build
.