一 获取skynet源代码
- 安装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
到github上面下载skynet的源代码 skynet的代码保存在github上面,大家可以去上面查看,现在我们用git把代码拷贝一份下来:
$ git clone https://github.com/cloudwu/skynet.git
二 skynet代码目录结构
目录 | 说明 |
---|---|
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服务器
编译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虚拟机程序。
编译lua虚拟机
#打开另一个终端,开始编译虚拟机
$ cd ./3rd/lua/
$ make linux
#编译成功则会在当前路径上面看到一个可执行文件lua
运行客户端
#跑到skynet根目录
$ cd ../../
#运行client.lua这个脚本
$ ./3rd/lua/lua examples/client.lua
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq769651718/article/details/79432809