Skynet is a lightweight online game framework which can be used in many other fields.Skynet 是一个轻量级的网络游戏框架,可以在其他许多领域使用。本篇用于记录Skynet的下载编译和运行过程

本人环境为基于CentOS下的教程,如果使用其他版本请自行参考

框架地址

https://github.com/cloudwu/skynet

自己码云搬运的链接(如果github连不上的话)
https://gitee.com/Nicer_feng/skynet

安装过程

git clone https://github.com/cloudwu/skynet.git

连不上可以用我搬运的

git clone https://gitee.com/Nicer_feng/skynet.git

安装必要工具

yum install gcc          #用于编译源码
yum install autoconf    #用于编译源码
yum install readline-devel  #编译lua会用到

编译源码

[root@feng1 study]# cd skynet/
[root@feng1 skynet]# make linux

运行Skynet服务器

make linux

安装时候如果报错,说明gcc版本有点低了,可以参考这篇升级一下gcc版本再编译

In file included from lstring.c:23:0:
../../skynet-src/atomic.h:25:23: fatal error: stdatomic.h: No such file or directory#include <stdatomic.h>^
compilation terminated.

编译成功后再次运行

[root@feng1 skynet]# ./skynet
Need a config file. Please read skynet wiki : https://github.com/cloudwu/skynet/wiki/Config
usage: skynet configfilename
[root@feng1 skynet]#

直接启动则提示我们需要指定一份配置文件,在"./skynet/example"下有一个config文件是KV数据库的配置文件,我们带上这个配置文件再启动一次skynet

[root@feng1 skynet]# ./skynet examples/config
[:01000002] LAUNCH snlua bootstrap
[:01000003] LAUNCH snlua launcher
[:01000004] LAUNCH snlua cmaster
[:01000004] master listen socket 0.0.0.0:2013
[:01000005] LAUNCH snlua cslave
[:01000005] slave connect to master 127.0.0.1:2013
[:01000004] connect from 127.0.0.1:56484 4
[:01000006] LAUNCH harbor 1 16777221
[:01000004] Harbor 1 (fd=4) report 127.0.0.1:2526
[:01000005] Waiting for 0 harbors
[:01000005] Shakehand ready
[:01000007] LAUNCH snlua datacenterd
[:01000008] LAUNCH snlua service_mgr
[:01000009] LAUNCH snlua main
[:01000009] Server start
[:0100000a] LAUNCH snlua protoloader
[:0100000b] LAUNCH snlua console
[:0100000c] LAUNCH snlua debug_console 8000
[:0100000c] Start debug console at 127.0.0.1:8000
[:0100000d] LAUNCH snlua simpledb
[:0100000e] LAUNCH snlua watchdog
[:0100000f] LAUNCH snlua gate
[:0100000f] Listen on 0.0.0.0:8888
[:0100000f] lua call [100000e to :100000f : 3 msgsz = 36] error :
........
[:01000009] KILL self
[:01000002] KILL self

启动报错

但是我这边启动的时候出了点意外

可以看到是在监听8888端口后报的错,回忆了一下发现我服务器是运行了宝塔的,怎么能不报错呢?

找了一下发现这个8888是在./skynet/examples/main.lua中配置的,顺手改个9999试试看

再次启动,舒服了

启动服务端以后我们再启动一个客户端(CS模型不在多说了),Skynet下也有客户端的例子,在examples/client.lua中

启动客户端

lua exaples/clinet.lua

如果上面这个报错表示可能服务器没有安装lua环境、或者lua版本小于5.3,我们可以换一个命令启动如下

./3rd/lua/lua examples/client.lua

启动以后,打印表示每5秒会回复心跳包

在./skynet/examples/client.lua文件中可以看到如果我们回复hello,服务器会返回world

往服务端发消息

输入hello返回

服务端打印

skynet下载、编译、运行相关推荐

  1. Android10源码AOSP(从Ubuntu14.04环境搭建到下载编译运行)

    Ubuntu14.04环境搭建 电脑为笔记本,CPU i7-10750H,16G内存 虚拟机使用VMware Workstation 15 Pro 操作系统为Ubuntu 64 位 14.04 AOS ...

  2. moos-ivp 下载编译运行

    旨在帮助研究MOOS-IvP的人员,或一起交流: 首先在MIT官网上下载最新的moos-ivp,下载要用到svn,于是先在ubuntu下下载svn,命令: sudo apt-get install s ...

  3. 用CMake编译运行在网上下载的源文件src

    参考:http://blog.csdn.net/yiqiudream/article/details/51885698 (一).怎么用CMake打开下载的源文件? 工具:下载CMake --> ...

  4. 关于CodeBlocks下载了带mingw版本的依旧无法编译运行的解决方案

    对于下载了带mingw版本的依旧无法编译运行的其中一个问题可能是GCC的路径CodeBlocks默认设置没有正确,直接上图片.一 首先打开CodeBlocks 如果CodeBlocks不能编译的话会在 ...

  5. fuchsia学习_下载编译遇到问题和demo运行

    下载编译,官网 https://fuchsia.dev $ curl -s "https://fuchsia.googlesource.com/fuchsia/+/master/script ...

  6. KEIL5工程不能编译和下载,运行时提示找不到.axf文件(Error: Flash Download failed - Could not load file“.axf“)

    KEIL5工程不能编译和下载,运行时提示找不到.axf文件 KEIL5工程不能编译和下载,运行时提示找不到.axf文件 keil5debug运行时弹出警告 在网上找了好多办法都试过,就是不行,最终根据 ...

  7. optee介绍(一)代码下载编译以及使用qemu运行

    系列文章目录 第一章 optee介绍(一)代码下载与编译 第二章 optee介绍(二)qemu run-only运行 文章目录 系列文章目录 前言 一.optee代码下载 1.repo方式下载 2.手 ...

  8. java游戏刀剑_Game_rc 刀剑无双服务端后端源代码,完美编译运行,javawanmeiyunxing Engine 游戏引擎 267万源代码下载- www.pudn.com...

    文件名称: Game_rc下载  收藏√  [ 5  4  3  2  1 ] 开发工具: Java 文件大小: 8214 KB 上传时间: 2016-12-01 下载次数: 0 提 供 者: 王文文 ...

  9. 玩转mini2440开发板之【下载编译安装运行QT lib/QT Creator/QT程序全过程】

    玩了这么久的mini2440开发板,今天终于完整的将QT研究了一遍,从下载QT库的源码包.配置.编译.安装,然后再到QT Creator的下载.安装和配置,进而新建一个工程,并成功编译,下载到开发板中 ...

最新文章

  1. matlab丢失icuuc54,icuuc56.dll下载|
  2. 修改class文件_VM实战(六) - 通过案例深入学习class文件结构原理
  3. tomcat的服务器配置详解
  4. UA MATH574M 统计学习II 高维数据的二元分类
  5. 【原创】 关于全局静态变量初始化
  6. 【Zookeeper】源码分析之持久化(三)之FileTxnSnapLog
  7. git-commit
  8. 对渠道流量异常情况的分析
  9. 《Python Cookbook 3rd》笔记(3.5):字节到大整数的打包与解包
  10. 安装 PyTorch C++ API libtorch 及一个最小例子
  11. 训练日志 2018.9.1
  12. 软考路:2021年系统架构设计师之考试
  13. 遥感动态监测实验(以福州为例)
  14. Unity代码分享——一个快速显示所有Sprite为Image_icon的帮助类
  15. Centos下安装FastDFS
  16. R-CNN文章详细解读
  17. C盘清理的五大技巧,瞬间多出30G
  18. 苹果描述文件无法连接服务器,教你 game center无法连接服务器解决办法及iOS9.3.2公测版已修复GameCenter无响应bug...
  19. failed to accept an incoming connection: connection from 127.0.0.1
  20. 该如何选择手机群控系统,小白必看,防进深坑。

热门文章

  1. C1驾驶证拿到本本了
  2. rfa 文件读取_rfa文件扩展名,rfa文件怎么打开?
  3. 最新仿映客直播APP开发实战项目IOS开发实战8天(最全最新)
  4. 新手上路,嘀嘀嘀。。
  5. 个人作业项目报告(一)——实验要求,需求分析,PSP表格,设计思路等
  6. 北京理工大学计算机学院研究生宿舍几号楼,2021北京理工大学宿舍条件和新生宿舍图片及分配规则分享...
  7. SSH。远程访问与控制
  8. Linux配置squid服务(代理实现解析DNC(国赛Linux服务器))
  9. cta策略 有哪些_简单介绍什么是CTA交易策略
  10. Tapestry携旗下蔻驰等三大品牌再赴进博会;星巴克连续第三年成为进博会支持企业 | 美通企业日报...