传送门
1.【EOS开发环境搭建源码编译】 <https://blog.csdn.net/itleaks/article/details/80367131>
2.【EOS源码调试】 <https://blog.csdn.net/itleaks/article/details/80455496>
3.【EOS智能合约开发实践】 <https://blog.csdn.net/itleaks/article/category/7700370>
4.【主网测试网络实践】 <https://blog.csdn.net/itleaks/article/category/7717311>
EOS资源问题
消耗的CPU,NET资源何时恢复,目前是一天内不执行任何action,消耗的CPU就会恢复,但是它不是自动恢复的,所以一天后你执行get
account会发现消耗的CPU量没有变化。但是你如果执行一个新的action,然后就会发现消耗的CPU, NET资源信息更新了,变少了。有CPU, NET,
RAM相关问题,可以访问【EOS互助社区】 <http://eosfavor.com>
编译安装问题
1.源码拉取的时候必须使用--recursive
git clone https://github.com/eosio/eos <https://github.com/eosio/eos>
--recursive
2.源码拉取不完整
这是因为github网络慢,参考这篇博文【github访问慢和clone慢解决方案
<https://blog.csdn.net/itleaks/article/details/80351680>】
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,删除这个目录,重启nodeos即可重置账号,智能合约等各种数据
防范方法:
不要使用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
如需实时查看最新文章,请关注公众号"区块链斜杠青年",一起探索区块链未来
热门工具 换一换