设置本地环境
-
Getting the Code
To download all of the code, clone the eos repository and its submodules.
git clone https://github.com/EOSIO/eos --recursive
If a repository is cloned without the --recursive flag, the submodules can be retrieved after the fact by running this command from within the repo:
git submodule update --init --recursive
Throughout the EOSIO documentation and tutorials, reference will be made to the top level of your local EOSIO source repository. The location where you just cloned the eos repository is that location. The notation ${EOSIO_SOURCE} represents the same thing. For example, if you ran the git clone operation in a folder called ~/myprojects, then ${EOSIO_SOURCE}=~/myprojects/eos. Note that ${EOSIO_SOURCE} is used in the documentation for notational purposes only. No environment variable is implied or required. More commonly, for simplicity, this and other documents might simply refer to eos. This is equivalent to ${EOSIO_SOURCE}.
获取代码
下载所有的代码,克隆 eos 项目库和子模块.
git clone https://github.com/EOSIO/eos --recursive
如果某个项目库已经被克隆没有 --recursive
标记 ,则可以在 repo 内运行以下命令来检索子模块:
git submodule update --init --recursive
通过整个 EOSIO 文档和教程,将参考你本地最顶层资源库.你刚刚克隆 EOS 存储路径就是该位置.这个符号 $ {EOSIO_SOURCE}
表示相同位置。例如, 如果你在名为~/myprojects
文件夹中运行git clone
操作,那么 ${EOSIO_SOURCE}=~/myprojects/eos
.请注意$ {EOSIO_SOURCE}
在文档中仅被用于标记目的.没有环境变量是被默认或者必须的.更多常用的,为简单起见,这个文档和其他文档可能只是简单地引用了eos
.这相当于 ${EOSIO_SOURCE}
.
编译 EOSIO
编译 EOSIO 是通过运行一个自动化脚本完成的. 编译工具的信息主要是存放在 eos/build
文件夹中. 生成的可执行文件可以在 eos/build/programs
文件夹中找到.
自动化编译脚本
自动化编译脚本首先会检查和安装需要的依赖库,然后进行编译 EOSIO
. 脚本支持如下所示的操作系统,我们会在将来的版本中支持其他的 Linux/Unix 版本.
- Amazon 2017.09 及 更高版本.
- Centos 7.
- Fedora 25 及 更高版本 (推荐 Fedora 27).
- Mint 18.
- Ubuntu 16.04 (推荐 Ubuntu 16.10).
- MacOS Darwin 10.12 及 更高版本 (推荐 MacOS 10.13.x).
系统需求(针对所有系统)
- 至少需要 8GB 内存
- 至少需要 20GB 磁盘空间
运行编译脚本
在 eos
文件夹中运行脚本,命令如下:
cd eos
./eosio_build.sh
编译验证
一般性,我们可以通过一套测试程序进行一些编译结果的验证. 为了在编译结束之后进行整套测试,需要先启动 mongod
,再执行 make test
命令进行测试.
在 Linux 系统:
~/opt/mongodb/bin/mongod -f ~/opt/mongodb/mongod.conf &
在 MacOS 系统:
/usr/local/bin/mongod -f /usr/local/etc/mongod.conf &
然后执行如下命令(所有系统):
cd build
make test
安装可执行文件
为了简化合约开发,其内容可以通过使用 make install
命令来存放在 /usr/local
文件夹中. 这个步骤中命令是在 build
文件夹中运行. 因为需要足够的权限来执行安装命令,因此我们使用 sudo
命令获取权限并执行 make install
.
cd build
sudo make install