[EOS源码分析]1.EOS源码编译运行

本文介绍了如何在mac上基于EOS dawn-v4.1.0分支编译源码,包括解决编译过程中的问题,如依赖库冲突、内存不足限制等,提供了解决方案和编译步骤。
摘要由CSDN通过智能技术生成

 

本文所有实践都是基于EOS dawn-v4.1.0,请切到该分支然后实践

切换命令:git checkout dawn-v4.1.0

    目前网络上都是针对老版EOS2.0源码编译的文章,我在mac上参考这些文章编译,最后发现根本就不对,最新版本只需一条命令(./eosio_build.sh,依赖库会自动安装的)即可。我根据这些文章手动安装的库还导致如下问题,最后大部分时间都花在解决这个问题上。【官网安装文档传送门

 

ItleaksDeMacbook-Pro:eos itleaks$ ./eosio_build.sh

fatal: destination path 'mongo-cxx-driver' already exists and is not an empty directory.

    Unable to clone MongoDB C++ driver at this time.

    Exiting now.

 

这个问题解决方案如下

sudo rm -rf /tmp/mongo*

cd /path/to/eos

rm -rf build/

git pull

git submodule update --init --recursive

./eosio_build.sh

 

如果还是不行,可以尝试重装brew,具体参考我的这篇博文【mac重装Homebrew

 

 

如果出现下面的问题

 Failed to find Gettext libintl (missing: Intl_INCLUDE_DIR)

执行下面的命令即可

brew unlink gettext && brew link --force gettext

 

现在开始跟着下面的步骤编译EOS搭建开发环境吧

下载源码

EOS 代码使用了三个子模块

  • 插件管理模块 AppBase
  • 区块链结构模块 ChainBase
  • WASM 模块

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

所以上面需要用recursive,如果没有带有recursive下载了eos,可以通过如下方式下载submodules

cd eos

git submodule update --init --recursive

国内目前从github下载源码速度很慢,可以参考我这篇博文【github访问慢和clone慢解决方案】提速

 

编译

编译其实很简单,就是执行./eosio_build.sh脚本

mac平台编译依赖homebrew工具,所以必须先安装好homebrew工具

    

ruby -e "$(curl -fsSL

EOSIO的设计包括: 免费汇率限制交易 低延迟阻止确认(0.5秒) 低开销的拜占庭容错终结 可选的高开销,低延迟BFT终端 由Web Assembly支持的智能合约平台 专为稀疏头灯客户端验证而设计 计划的周期性事务 时间延迟安全 基于角色的权限分级 支持生物识别硬件安全密钥(例如Apple安全飞地) 并行执行上下文自由验证逻辑 区块链间通信 EOSIO允许开发人员编写与需求确定性执行的共识算法兼容的业务逻辑。您的用户群可以使用安全的公钥基础结构与此业务逻辑进行交互,为您的业务带来区块链级别的安全性,责任性和可审计性。业务逻辑根据组织的治理结构轻松更新。 EOSIO旨在在没有任何令牌的环境中运行,系统管理员为用户分配可能无限制的资源配额。或者,智能合约可以通过其他方式分配资源配额,例如令牌销售,市场费用或投票。这使得EOSIO非常适合企业和社区驱动的区块链。 根据您的使用情况,可以将EOSIO配置为使用两种不同的Web装配引擎之一Binaryen和WAVM。单个EOSIO区块链可支持高达1,000 TPS,未来版本的EOSIO将提供简化区块链间通信所需的工具,使您的业务能够水平扩展。 EOSIO是在开放源代码MIT许可下发布的,按“原样”提供,没有任何明示或暗示的担保。EOSIO软件提供的任何安全性部分取决于它的使用,配置和部署方式。EOSIO建立在许多第三方库上,如Binaryen(Apache许可证)和WAVM(BSD 3-clause),它们也是“按现状”提供的,没有任何形式的保证。在不限制前述内容的一般性的情况下,Block.one不作任何陈述或保证EOSIO或任何第三方库将按预期执行或不会出现错误,错误或错误代码。这两种方式都可能以很大或很小的方式失败,这可能会完全或部分地限制功能或危害计算机系统。如果您使用或实施EOSIO,则自行承担风险。在任何情况下都不会阻止。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值