本文基于Ubuntu 18.04操作系统基础上,讲解包括GO语言的安装与配置、VSCODE的安装与配置、初币代码下载及编译TrueChain环境搭建。
1.GO语言的安装与配置 1.1.所需工具 1].Git 2].Go => version 1.7 或更高版本 3].编译工具 1.2.Git 的安装 首先,检查系统是否以经安装了git: $ git --version
当出现类似上图时,表示系统未安装git。 由于对Git的版本要求不高,所以直接使用包管理工具安装: $ sudo apt-get install git 最后,安装完成后,检查是否安装成功: $ git --version
当出现类似上图时,表示系统安装git成功。如果需要更新git请参考在Linux中安装spf13-vim且更新git版本一文。 1.3.GO安装 1].首先,同样是检查是否已经安装了go $ go version 2].包管理工具安装 $ sudo apt-get install golang-go 3].设置环境变量: 1)先创建GOPATH文件夹 $ cd ~ $ mkdir go $ cd go $ mkdir bin pkg src 2)在点击打开Files 在弹出的Files中打开 Home文件夹,然后选中Show Hidden Files 查看隐藏的文件,找到 .profile文件
3)在$HOME/.profile 文件的最后添加下边的命令 export GOPATH=$HOME/go export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
4)然后运行以下命令使之生效 $ source $HOME/.profile 再使用go version即可查看是否安装成功。 5)测试是否安装成功 a)执行命令-> $ cd go/src
b)创建hello文件夹,执行命令-> $ mkdir Hello c)创建Hello.go 文件夹,执行命令-> $ touch Hello.go d)将如下代码写入$HOME/go/src/hello/hello.go package main import "fmt" func main() { fmt.Printf("hello, world\n") }
e)然后编译运行: $ cd $HOME/go/src/Hello $ go build $ ./Hello // 输出:hello,world
1.4.安装编译环境 执行命令: $ sudo apt-get install build-essential
2.VSCODE的安装与配置 2.1.准备工作 先安装一些工具: $ sudo apt-get install cmake $ sudo apt-get install python-dev python3-dev 2.2.VSCode 安装: 1)下载安装包,下载地址在这里,在Linux下打开该页面会直接显示Linux安装包的下载页面。如下图:
因为是Ubuntu系统,所以下载.deb文件,下载的文件名为“code_1.26.1-1534444688_amd64.deb”(不同版本可能会有不同)。下边开始安装: $ cd path/to/deb_file // 进入deb文件所在目录 $ sudo dpkg -i code_1.26.1-1534444688_amd64.deb // 开始安装 2)安装成功如下图:
3)按“Win”键,在所有程序里边搜索“vscode”就可以找到它了:
2.3.VSCODE扩展安装包安装 1)在扩展栏里搜索“chinese”,第一个就是中文包,需要的可以安装。安装完成后重启软件即可。
2)搜“Go”,安装Go的扩展。
然后VSCode的安装就完成了。
3.初币代码下载 基于笔者在最初下载安装VSCODE查看代码,遇到过的问题,发现多数文件都是存放在 github.com文件夹中的情况:
为少走弯路在下载代码时需要也要相应下载到对应的github.com的目录下。 1].创建相关路径的文件夹,执行命令 $ cd $GOPATH/src/ $ mkdir github.com
2].进入相应文件夹路径,下载代码 $ cd $GOPATH/src/github.com $ git clone https://github.com/truechain/truechain-engineering-code.git 3.使用VSCode打开truechain-engineering-code所在文件夹。
4.VSCODE的依赖包安装与配置 VSCODE中安装GO的依赖包,因这些依赖包不是初币项目的实际项目需要的依赖包。所以不会影响运行源码。这些包应该是装Go扩展的时候统一装的,并不是项目需要。 因为国内的网络屏蔽,在GO官网的golang.org无法连接上,安装依赖包不能成功。 为解决此问题,可到github下载go tools 和 golint 的源码到本地目录,用go install命令安装即可。
1]、在%GOPATH%\src\ 目录下,建立golang.org 文件夹,并再新建x文件夹。 目录为 "%GOPATH\src\golang.org\x\"
2]、完成目录切换后,开始下载插件包:git clone https://github.com/golang/tools.git tools 3]、执行完以后,会多一个tools文件夹。
4]、打开vsCode终端,切换到 终端,进入“%GOPATH”目录,执行 go install github.com/ramya-rao-a/go-outline go install github.com/acroca/go-symbols go install golang.org/x/tools/cmd/guru go install golang.org/x/tools/cmd/gorename go install github.com/josharian/impl go install github.com/rogpeppe/godef go install github.com/sqs/goreturns go install github.com/golang/lint/golint go install github.com/cweill/gotests/gotests go install github.com/ramya-rao-a/go-outline go install github.com/acroca/go-symbols go install golang.org/x/tools/cmd/guru go install golang.org/x/tools/cmd/gorename go install github.com/josharian/impl go install github.com/rogpeppe/godef go install github.com/sqs/goreturns go install github.com/cweill/gotests/gotests
5.编译TrueChain 1].在VSCODE中打开“调试->打开配置”就打开了“lanuch.json”文件 修改参数: { // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 "version": "0.2.0", "configurations": [ { "name": "Launch", "type": "go", "request": "launch", "mode": "auto", "remotePath": "", "port": 2345, "host": "127.0.0.1", "program": "${fileDirname}", "env": {}, "args": ["init", "./genesis.json"], // 主要修改这里 "showLog": false } ] } 2].按照README里的,写一个genesis.json文件,然后第二个参数把路径指向这个文件也可以:
3].然后,在“cmd/getrue/main.go”上F5就可以初始化了。初始化成功如下图:
4].继续修改“lanuch.json”的“args”参数为: "args": ["--nodiscover", "--singlenode", "--mine", "--etherbase", "0x8a45d70f096d3581866ed27a5017a4eeec0db2a1", "--bftkeyhex", "c1581e25937d9ab91421a3e1a2667c85b0397c75a195e643109938e987acecfc", "--bftip", "192.168.68.43", "--bftport", "10080"], 5].再F5就可以挖矿了。运行成功如下图,有时候可能不太一样:
常见问题 报错:Fatal: Failed to write fast genesis block: database already contains an incompatible genesis block (have 1acaa8c23f22e0ae, new bc72c21faf0bc5b9)
解决:肯定是在配置“lanuch.json”的“args”参数之前,按下了F5,执行以下命令即可: $ rm -rf ~/.truechain/
相关主题 |