# 安装Tendermint
# 使用二进制安装
要下载预编译二进制文件,请参见发布页。
# 从源码安装
您需要安装go
并配置相关环境变量。以下指令可以完成配置:
echo export GOPATH=\"\$HOME/go\" >> ~/.bash_profile
echo export PATH=\"\$PATH:\$GOPATH/bin\" >> ~/.bash_profile
echo export GO111MODULE=on >> ~/.bash_profile
1
2
3
2
3
# 获取源码
mkdir -p $GOPATH/src/github.com/tendermint
cd $GOPATH/src/github.com/tendermint
git clone https://github.com/tendermint/tendermint.git
cd tendermint
1
2
3
4
2
3
4
# 安装工具及依赖
make tools
1
# 编译
执行
make install
1
将二进制文件生成并安装到$GOPATH/bin
,或执行
make build
1
将二进制文件生成并存入./build
。
声明 以上Tendermint的二进制文件是在没有DWARF符号表的情况下生成/安装的。如果要使用DWARF符号和调试信息生成/安装tendermint,请打开makefile文件,删除build_FLAGS
中的-s -w
。
现在安装了最新的Tendermint,您可以通过运行以下命令进行验证:
tendermint version
1
# 运行
要使用进程内应用程序启动单节点区块链,请执行以下操作:
tendermint init
tendermint node --proxy_app=kvstore
1
2
2
# 重新安装
如果您已经安装了Tendermint,并且进行了更新,只需执行
cd $GOPATH/src/github.com/tendermint/tendermint
make install
1
2
2
若要升级程序,只需执行
cd $GOPATH/src/github.com/tendermint/tendermint
git pull origin master
make install
1
2
3
2
3
# 编译CLevelDB支持
首先安装LevelDB (最低支持版本为1.7)。
也可以选择快速安装LevelDB(可选方式). 以下为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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
然后,修改配置文件中数据库后端为cleveldb
:
# config/config.toml
db_backend = "cleveldb"
1
2
2
执行
CGO_LDFLAGS="-lsnappy" make install_c
1
可安装Tendermint,
执行
CGO_LDFLAGS="-lsnappy" make build_c
1
可生成文件到./build