本文来自:https://blog.csdn.net/qq769651718/article/details/79432809(翻译,学习用)
安装git代码管理工具
$ sudo apt-get update
$ sudo apt-get install git
注意:如果安装失败,请先安装一下只支持库
$ sudo apt-get install build-essential libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip
2、到github上面下载skynet的源代码 skynet的代码保存在github上面,大家可以去上面查看,现在我们用git把代码拷贝一份下来:
$ git clone https://github.com/cloudwu/skynet.git
3rd #第三方支持库,包括LUA虚拟机,jmalloc等
lualib #lua语言封装的常用库,包括http、md5
lualib-src #将c语言实现的插件捆绑成lua库,例如数据库驱动、bson、加密算法等
service #使用lua写的Skynet的服务模块
service-src #使用C写的Skynet的服务模块
skynet-src #skynet核心代码目录
test #使用lua写的一些测试代码
examples #示例代码
Makefile #编译规则文件,用于编译
platform.mk #编译与平台相关的设置
编译与运行skynet服务器
$ cd skynet #今后我们所有的工作都在这个目录中进行
$ make linux
可能出错的原因:
#如果报错:
./autogen.sh: 5: ./autogen.sh: autoconf: not found
#安装autoconf
$ sudo apt-get install autoconf
#如果报错:
lua.c:83:31: fatal error: readline/readline.h: No such file or directory
#安装libreadline-dev
$ sudo apt-get install libreadline-dev
#编译成功出现以下提示
make[1]: Leaving directory '/home/ubuntu/workspace/skynet'
#并且在目录里出现一个可执行文件skynet
运行第一个skynet节点
#启动一个skynet服务节点
$ ./skynet examples/config
我们要运行的的客户端是example/client.lua 这个lua脚本文件,那么首先你要有一个lua虚拟机程序。
1、编译lua虚拟机
#打开另一个终端,开始编译虚拟机
$ cd ./3rd/lua/
$ make linux
#编译成功则会在当前路径上面看到一个可执行文件lua
2、运行客户端
#跑到skynet根目录
$ cd ../../
#运行client.lua这个脚本
$ ./3rd/lua/lua examples/client.lua