设置本地环境
目录
获取代码
下载所有的代码,克隆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