当前位置: 首页 > >

EOS各种问题汇总,EOS入门必读

发布时间:

传送门

? ? 1.【EOS开发环境搭建源码编译】


? ? 2.【EOS源码调试】


? ? 3.【EOS智能合约开发实践】


? ? 4.【主网测试网络实践】


EOS资源问题

? ? 消耗的CPU,NET资源何时恢复,目前是一天内不执行任何action,消耗的CPU就会恢复,但是它不是自动恢复的,所以一天后你执行get account会发现消耗的CPU量没有变化。但是你如果执行一个新的action,然后就会发现消耗的CPU, NET资源信息更新了,变少了。有CPU, NET, RAM相关问题,可以访问【EOS互助社区】


编译安装问题

??? 1.源码拉取的时候必须使用--recursive


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


??


? ? 2.源码拉取不完整


?? ?? ? 这是因为github网络慢,参考这篇博文【github访问慢和clone慢解决方案】


??3.eosio_build.sh执行后很长时间没反应


? ? 这是因为编译过程中会下载很多依赖库,其中LLVM这个库耗时最久,除了VPN没有什么太好的方法。有网友说使用国内brew源,但同时也有很多人说这个brew国内源也不太好。


? 4.内存不够错误


?? ?


Beginning build version: 1.2


????2018年 05月 18日 星期五 07:13:36 UTC


????User:?itleaks


????git head id: 29c30f10650102ffb000bb1a287dc285d582275f


????Current branch: master


????ARCHITECTURE: Linux


????OS name: Ubuntu


????OS Version: 16.04


????CPU speed: 3095.998Mhz


????CPU cores: 1


????Physical Memory: 1993 Mgb


????Disk install: /dev/sda1


????Disk space total: 47G


????Disk space available: 31G


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


????Exiting now.


?


比如ubuntu*台就修改./scripts/eosio_build_ubuntu.sh文件,将下面的7000修改即可



数据目录
钱包数据目录

?


? ?删除文件即可删除对应钱包


~/eosio-wallet/xxx


?
节点数据目录

?程序非正常崩溃,退出可能会出现如下错误


?database dirty flag set (likely due to unclean shutdown) replay or resync required


解决方法:


? ? ? 添加--hard-replay-blockchain或者--delete-all-blocks参数*粢部梢


? ? ? 或者然后按如下方式清除数据*艏纯



ubuntu:


?? ??~/.local/share/eosio/


Mac:


?? ?~/Library/Application Support/eosio/



? ? 删掉nodeos,删除这个目录,*鬾odeos即可重置账号,智能合约等各种数据


防范方法:


? ? ? 不要使用pkill -9 nodeos, 而是采用pkill -2 nodeos


? ? ? 定时备份数据,出现上述问题后可以使用备份数据,然后系统会从备份数据开始同步,同步时间大大缩短。


命令操作疑点

? ?创建账号的creator参数



cleos create account [OPTIONS] creator name OwnerKey ActiveKey



? ?该命令只适合本地私有链且还没有部署eosio.system合约前使用,否则必须用cleos system newaccount??creator name


? ? creator必须是一个已经存在的账号,这里就有个问题了,我们第一次创建账号,从哪里获取这个creator账号?


? ? 本地私有网络下:这个账号就是eosio, eosio这个特殊账号是在nodeos启动时通过参数-p eosio自动生成的,且这个账号的private key,和public key是hardcode固定的。当然搭建私有网络你可以通过修改config文件来修改这两个值,但是你同时也得修改这个私有网络的其他节点对应的private key, public key值


? ?其他网络(主网,测试网络):你需要通过其他人创建,或者通过水龙头渠道创建你的第一个账号,然后你可以通过你的第一个账号创建其他账号??


eos4.2版本后打印没有输出

? ? 带--contracts-console参数启动nodeos


eosiocpp智能合约编译工具找不到

? ? 这是因为你没有调用install安装工具


cd $EOS_SOURCE/build


sudo make install


? ? ? eosio1.2后该命令也不起作用,因为install命令不再将eosiocpp等可执行文件安装在系统path了,需要手工设置


eosio默认账号私钥导入

cleos --wallet-url http://127.0.0.1:8888 wallet create?


//默认私钥一般是下面这个,如果不一致,请检测config.json里的signature-provider这个后面的 key


cleos --wallet-url http://127.0.0.1:8888 wallet import ?5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3



超级节点,普通节点,主链,私有链

? ? 超级节点:DPOS协议的21+1个代表节点,目前初始的超级节点正在竞选中,理论上超级节点后续会动态变化,但是"虹吸效应"告诉我们强者愈强,弱则愈弱,估计短期变化可能性不大


? ? 普通节点:负责投票,获取区块信息,发送交易,提交应用


? ? 主链: ?2018年6月3日上线,就几天了


? ? 私有链: 本地搭建的链,自己玩EOS,应用开发测试环境


智能合约开发工具

? ? ?0)推荐使用js4eos, 纯Javascript开发环境, npm install -g js4eos 安装即可使用


? ? ?1) vim, vscode编写c++智能合约代码,然后通过eosiocpp工具编译生成.wast, .abi文件然后部署,适合中小项目


? ? ?2) 参考EOS_SOURCE_DIR/contracts/eosio.bios智能合约在EOS_SOURCE_DIR/contracts新增一个合约目录xxx,使用CMake编译,然后在EOS_SOURCE_DIR目录下执行./eosio_build.sh,然后在EOS_SOURCE_DIR/build/contracts/xx会生成.wast,.abi文件,然后部署。适合大项目


? ? ?3)晒晒日光浴,喝喝茶,等待类似以太坊里truffle/browser-solidity的便利化开发环境


备注

? ? 以上问题只是我在使用学*EOS的过程中遇到的问题,大家有什么问题可以在评论里留言,我会尽快回复并补充到这个博文


|**************************************************
* 本文来自CSDN博主"爱踢门",喜欢请点关注
* 转载请标明出处:http://blog.csdn.net/itleaks
***************************************************|


如果你对EOS,ETH技术及开发感兴趣,请入QQ群讨论:?829789117



如需实时查看最新文章,请关注公众号"区块链斜杠青年",一起探索区块链未来




友情链接: