1. 首页
  2. 基本原理

如何从源码编译并运行ByteBall hub节点

这次主要是演示一下关于byteball网络中 Hub节点的编译过程.

作者: 张雪松

前言

最近刚刚接触了byteball, 最开始都是先从白皮书看起, 研究分析里面的概念, 国内的小伙伴已经把它拆分出来不同的部分并且发布到了网站上. 所以自己也就想尽一点微薄之力. 这是第一次写教程, 这次主要是说一下关于byteball网络中 Hub节点的编译过程. 有什么不足之处欢迎留言.

环境准备

  • git
  • nodejs
  • nvm node版本管理器, 可以自行百度

编译

  1. 克隆仓库 仓库地址: https://github.com/byteball/byteball-hub
git clone git@github.com:byteball/byteball-hub.git

image
  1. 进入项目目录下
cd byteball-hub

image

  1. 此时确定一下node的版本
node -v

image-1

  1. 开始下载项目需要的依赖包

npm install

我的node的当前版本是 7.10.0, 到这里我们基本的东西就准备差不多了. 开始下载依赖库

下载依赖库,需要一点儿时间, 下载完应后结尾部分应该如下图所示:

所以modules都安装成后,如下图所示:

image

image-1

运行

node start.js > log

image上面的命令是运行start.js文件,并将输出信息写入到log文件中

查看日志

tail -f log
image

碰到的一些问题

  1. npm install时 sqlite3 报错

在使用npm install 安装依赖包时, 发现 sqlite3 这个依赖安装的时候会出现一些错误.导致整个依赖没有安装成功.

我当时的解决方式是尝试了 node v7.10.1 再编译就通过了. 还是在下载依赖或者本地编译sqlite3库的时候出现了一些异常. 我的报错是在下载指定版本的sqlite3包时超时出错了.

  1. 运行会提示类似下图所示的错误:

image-1删除node_modules文件夹, 重新npm install一下

测试的版本

我电脑分别安装了如下几个版本

v7.10.0
v7.10.1
v8.9.3
v8.10.0
v8.11.1
system

测试了一下都可以编译并且运行

 

本文来自投稿,不代表字节雪球爱好者 OByte(ByteBall) Fans立场,如若转载,请注明出处:https://bbfans.org/2018/11/02/how-to-run-byteball-hub/

发表评论

登录后才能评论

联系我们

加入ByteBall技术群请添加

QR code