【CM】安装
GIT
sudo yum install -y git
GO
检查服务器 yum 里是否有 golang
yum search golang 
Go官网下载地址:https://studygolang.com/dl
Go官方镜像站(推荐): https://golang.google.cn/dl/
wget https://golang.google.cn/dl/go1.18.linux-amd64.tar.gz
sudo mkdir -p /usr/local/go  # 创建目录
sudo chmod a+rw /usr/local/go
tar zxvf go1.11.5.linux-amd64.tar.gz -C /usr/local/go # 解压
cd /usr/local/go
mv ./go/* ./
rmdir ./go
第二种
Linux下有两个文件可以配置环境变量,其中/etc/profile是对所有用户生效的;$HOME/.bash_profile是对当前用户生效
wget https://dl.google.com/go/go1.12.5.linux-amd64.tar.gz
tar -xzvf go1.12.5.linux-amd64.tar.gz -C /usr/local/
mkdir -p /home/gopath
cat >> /etc/profile <<EOF
export GOROOT=/usr/local/go
export GOPATH=/home/gopath
export PATH=\$PATH:\$GOROOT/bin
EOF
source /etc/profile
go version
#auto install golang
wget https://golang.google.cn/dl/go1.17.8.linux-amd64.tar.gz
sudo mkdir -p /usr/local/go
tar zxvf go1.18.linux-amd64.tar.gz -C /usr/local
rm -f go1.18.linux-amd64.tar.gz
mkdir -p /home/gopath
cat >> /etc/profile <<EOF
export GOROOT=/usr/local/go
export GOPATH=/home/gopath
export PATH=\$PATH:\$GOROOT/bin
EOF
source /etc/profile
DOCKER和docker-compose
Centos7上安装docker - 风止雨歇 - 博客园 (cnblogs.com)
 sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
 
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version
gcc
- 检查 gcc 版本
gcc --version
显示结果若 < 7.3,则执行下面步骤升级
- 升级 gcc
sudo yum install centos-release-scl
sudo yum install devtoolset-7-gcc*
scl enable devtoolset-7 bash
注意:第三条指令scl enable devtoolset-7 bash 只是在当前会话中升级了gcc,如果想每次登录gcc自动升级,可以把scl enable devtoolset-7 bash 放在 ~/.bash_profile 文件中。
cat >> ~/.bash_profile <<EOF
scl enable devtoolset-7 bash
EOF
环境搭建
源码下载
- 下载chainmaker源码到本地
$ git clone -b v2.2.0_alpha https://git.chainmaker.org.cn/chainmaker/chainmaker-go.git
- 下载证书生成工具源码到本地
$ git clone -b v2.2.0 https://git.chainmaker.org.cn/chainmaker/chainmaker-cryptogen.git
源码编译
- 编译证书生成工具
$ cd chainmaker-cryptogen
$ make
make失败,使用代理
go env -w GOPROXY=https://goproxy.cn
配置文件生成
- 将编译好的chainmaker-cryptogen,软连接到chainmaker-go/tools目录
# 进入工具目录
$ cd chainmaker-go/tools
# 软连接chainmaker-cryptogen到tools目录下
$ ln -s ../../chainmaker-cryptogen/ .
/home/gopath/pkg/mod/github.com/xiaotianfork/quic-go@v0.21.24/internal/qtls/go118.go:5:13: cannot use "quic-go doesn't build on Go 1.18 yet." (untyped string constant) as int value in variable declaration
make: *** [chainmaker] Error 2      
root@VM-8-16-ubuntu:/usr/local/bin/sdk-go/examples/user_contract_claim# go run main.go 
====================== create client ======================
2022/03/23 21:00:24 get cert hash failed, get cert hash failed, send QUERY_CONTRACT failed, all client connections are busy
exit status 1
--admin-key-file-paths=./testdata/crypto config/wxorg1.chainmaker.org/user/admin1/admin1.tls.key,./testdata/crypto-config/wxorg2.chainmaker.org/user/admin1/admin1.tls.key,./testdata/crypto-config/wxorg3.chainmaker.org/user/admin1/admin1.tls.key \
--admin-crt-file-paths=./testdata/crypto-config/wxorg1.chainmaker.org/user/admin1/admin1.tls.crt,./testdata/crypto-config/wxorg2.chainmaker.org/user/admin1/admin1.tls.crt,./testdata/crypto-config/wxorg3.chainmaker.org/user/admin1/admin1.tls.crt \
执行创建合约
./cmc client contract user create \
--contract-name=fact \
--runtime-type=WASMER \
--byte-code-path=./testdata/claim-wasm-demo/rust-fact-2.0.0.wasm \
--version=1.0 \
--sdk-conf-path=./testdata/sdk_config.yml \
--admin-key-file-paths=./testdata/crypto-config/wxorg1.chainmaker.org/user/admin1/admin1.tls.key,./testdata/crypto-config/wxorg2.chainmaker.org/user/admin1/admin1.tls.key,./testdata/crypto-config/wxorg3.chainmaker.org/user/admin1/admin1.tls.key \
--admin-crt-file-paths=./testdata/crypto-config/wxorg1.chainmaker.org/user/admin1/admin1.tls.crt,./testdata/crypto-config/wxorg2.chainmaker.org/user/admin1/admin1.tls.crt,./testdata/crypto-config/wxorg3.chainmaker.org/user/admin1/admin1.tls.crt \
--sync-result=true \
--params="{}"

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号