美文网首页
EOS开发环境搭建 EOS笔记

EOS开发环境搭建 EOS笔记

作者: Holiday_b216 | 来源:发表于2018-10-22 15:45 被阅读0次

    git clone

    首先选择好想要存放的目录,然后使用如下git命令clone项目。

    $ git clone https://github.com/eosio/eos--recursive

    对于git clone,--recursive选项,会自动初始化并更新仓库中的每一个子模块。递归克隆该项目下的所有项目。

    build

    克隆完成后,进入克隆的eos项目目录。eosio_build.sh这个shell脚本文件,可以帮我们直接安装好所有的依赖,并编译。EOS使用C++开发,CMake编译,依赖于Clang、CMake、Boost、OpenSSL、LLVM、secp256k1-zkp、MongoDB等。通过下面的命令执行这个文件。

    $ cd eos$ ./eosio_build.sh

    编译成功后,会出现如下内容,说明build成功。编译过程根据机器性能,和缺少的依赖的多少,可能需要较长的时间。我编译了2个小时才编译成功。

    可以按照提示内容,输入To verify your installation run the following commands下提示的命令测试来。这个测试如果不通过的话,暂时没有发现有什么问题。不进行测试的话,应该也没有什么问题。

    配置问题

    在编译时,eos官方要求机器至少有20G硬盘,8G内存。如果不满足要求,会报如下错误。

    Your system must have 7 or more Gigabytes of physical memory installed.

    解决方法:在./eos/scripts目录下修改提示相对应的脚本,根据系统来修改对应d的文件。我的是ubuntu,所以修改的是eosio_build_ubuntu.sh这个文件。

    内存提示不足时,Your system must have 7 or more Gigabytes of physical memory installed,修改大概在第二十几行的如下代码:

    if["${MEM_MEG}"-lt7000];then

    printf"\\tYour system must have 7 or more Gigabytes of physical memory installed.\\n"printf"\\tExiting now.\\n"exit 1fi

    将7000改成比自己机器内存小的一个值,比如700等。也可以直接把这段代码注释掉。

    硬盘提示不足时,You must have at least 20GB of available storage to install EOSIO,同理修改大概在第三十几行的如下代码:

    if["${DISK_AVAIL%.*}"-lt"${DISK_MIN}"];then

    printf"\\tYou must have at least %sGB of available storage to install EOSIO.\\n""${DISK_MIN}"printf"\\tExiting now.\\n"exit 1fi

    修改完成后,重新运行eosio_build.sh脚本。不过,尽管可以修改这些脚本然后进行编译,但是如果内存太低,在编译某些库的时候可能会因为内存耗尽而无法成功编译。

    其他编译问题

    Unable to download Boost libraries at this time

    如果出现Unable to download Boost libraries at this time这个错误,是因为网络问题而导致部分依赖包下载超时。可以手动下载对应的包,然后放到指定的目录(手动下载可以参照https://bihu.com/article/179190)。下载链接同样在eosio_build_ubuntu.sh这个脚本中。需要注意的是,如果手动下载配置好相应的包之后,需要修改这个脚本,如果不修改,在编译的时候还会自动下载。

    找不到WASM

    No WASM compiler cound be found (make sure WASM_ROOT is set)

    解决方法:

    在~/opt/ 中创建wasm文件,我是直接找到一个成功的整个文件考入

    install

    编译好之后,在eos目录下执行eosio_install.sh这个脚本。

    $ ./eosio_install.sh

    出现如下内容,说明安装成功:

    启动单节点

    在./eos/build/programs/nodeos下,输入如下命令启动节点:

    $ ./nodeos-e-peosio--plugineosio::chain_api_plugin--plugineosio::history_api_plugin

    如果遇到 Block log was not setup properly with genesis information

    解决方法:

    在~/.local/share目录下删除工程目录(该目录重启会重新生成)

    rm -rf  eosio

    然后在执行./nodeos-e-peosio--plugineosio::chain_api_plugin--plugineosio::history_api_plugin

    正常启动后,会有如下效果,开始出块并记录下来:

    到此,本地eos环境就配置好了。

    相关文章

      网友评论

          本文标题:EOS开发环境搭建 EOS笔记

          本文链接:https://www.haomeiwen.com/subject/dmjgzftx.html