要想认识一个框架,首先要做的就是让它跑起来。

skynet是一款基于C跟lua的开源服务端并发框架,这个框架是单进程多线程模型,主要应用于游戏服务端领域,是lua大神云风所写的。本文不涉及框架过多的理论知识,只是简单的介绍一下如何编译以及运行skynet。

skynet开源项目地址:

https://github.com/cloudwu/skynet

源码下载

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

由于github是国外网站,下载速度可以能比较忙,需要耐心等待。如果担心与远程的机子断线的话,可以加个&符号,让它在后台运行,慢慢下载。

编译之前需要安装相关的依赖库,以下依赖库无法安装的童鞋需要自行google解决。

yum install -y readline-devel
yum install -y autoconf

下载完之后,就可以开始编译

cd skynet

这时候如果你直接make的话会报以下错误

意思就是说需要添加一个系统名称,正常一般都是linux系统

make linux
如果是mac系统
make macosx

在编译的过程,不知道是不是我网络的原因,经常会碰见这样的一个问题。

fatal: unable to access 'https://github.com/jemalloc/jemalloc.git/': I/O operation timed out
fatal: clone of 'https://github.com/jemalloc/jemalloc.git' into submodule path '/app/process/skynet/3rd/jemalloc' failed
Failed to clone '3rd/jemalloc' a second time, aborting

这个意思好像就是说IO操作超时,可能是由于网络什么原因导致的。在这里不得不罗嗦几句,在编译的时候会去github下载jemalloc代码,很多时候在真的是非常慢,你可以单独下载,然后把jemalloc复制到skynet/3rd下面,或者你也可以在window系统上下载完之后上传到Linux上,试验过,在window上下载速度真的很快。

正常的话编译是需要一定的时间的,如果编译成功之后就会产生以下3个新的文件,其中skynet就是我们需要的可执行文件,这也是最核心的一个文件。

那么我们如何验证编译的这个文件是真的没问题呢?那么我们就需要运行一下skynet这个可执行文件。

运行可执行文件

./skynet example/config

一定要记得需要加个运行参数,这个是运行所需要的配置文件。如果能正常输出的话,就说明这个可执行文件是没有问题的。

更多精彩内容,请关注同名公众:一点月光(alittle-moon)

skynet源码解析(一)——编译和运行skynet相关推荐

  1. Android 4.0.1 源码下载,编译和运行

    [牛人分享]Android 4.0.1 源码下载,编译和运行 转自 http://blog.csdn.net/rambo2188/article/details/6943382 ----------- ...

  2. skynet源码解析(三)——启动流程

    对于你不了解的框架或者引擎,介绍再多的逻辑结构都好像有点茫然的感觉.所以小编认为,最有效的方式就是搞清楚框架启动流程的步骤,让自己心中有一条线可以牵引着. 当你在终端输入./skeynet examp ...

  3. libco源码解析(2) 创建协程,co_create

    libco源码解析(1) 协程运行与基本结构 libco源码解析(2) 创建协程,co_create libco源码解析(3) 协程执行,co_resume libco源码解析(4) 协程切换,coc ...

  4. Flink 源码解析 —— 源码编译运行

    更新一篇知识星球里面的源码分析文章,去年写的,周末自己录了个视频,大家看下效果好吗?如果好的话,后面补录发在知识星球里面的其他源码解析文章. 前言 之前自己本地 clone 了 Flink 的源码,编 ...

  5. 【阅读笔记】Taro转小程序编译源码解析

    前言 这篇文章的主要是对taro/taro-tarnsformer-wx进行源码解析,对于想要了解Taro或者了解babel的人希望看了能得到一定的启发. 由于我文笔实在太烂,所以整篇文章都是以阅读笔 ...

  6. Mybatis运行原理及源码解析

    Mybatis源码解析 一.前言 本文旨在mybatis源码解析,将整个mybatis运行原理讲解清楚,本文代码地址: https://github.com/lchpersonal/mybatis-l ...

  7. oracle job 每月前十天运行_Tensorflow源码解析7 -- TensorFlow分布式运行时

    1 概述 TensorFlow架构设计精巧,在后端运行时这一层,除了提供本地运行时外,还提供了分布式运行时.通过分布式训练,在多台机器上并行执行,大大提高了训练速度.前端用户通过session.run ...

  8. 老李推荐:第8章2节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-解析处理命令行参数...

    老李推荐:第8章2节<MonkeyRunner源码剖析>MonkeyRunner启动运行过程-解析处理命令行参数 MonkeyRunnerStarter是MonkeyRunner启动时的入 ...

  9. 【深度学习实战03】——YOLO tensorflow运行及源码解析

    本文章是深度学习实战系列第三讲文章,以运行代码+源码分析 为主: 转载请注明引用自:https://blog.csdn.net/c20081052/article/details/80260726 首 ...

最新文章

  1. wpf mvvm 实例
  2. 第一章.良好应用程序基石(2)
  3. 浅谈SAP CRM开发——基本业务概念
  4. 【HDU - 5777】domino(贪心)
  5. python--从入门到实践--chapter 10 文件及错误
  6. mysql官网下载详细教程图文
  7. py---web学习笔记09(JQuery)
  8. CV笔记9:纹理特征之LBP特征(基于python实现)
  9. kali中清除历史命令
  10. Android9 更改系统默认输入法
  11. 课程设计——模仿网易云UI设计基础(超简单版)
  12. Android App开发动画特效中帧动画和电影淡入淡出动画的讲解及实战(附源码和演示视频 简单易懂)
  13. 牛客网——MySQL数据库练习
  14. html中版心居中怎么写,CSS 版心和布局
  15. 手机拍照-基础构图小结
  16. 如何把多线程下载的数据按位置写入一个文件
  17. c语言中反比例函数定义,数学反比例函数知识点
  18. focusky怎么制作html5,一款简单易上手的3D动态PPT制作软件Focusky
  19. PPP模式如何激活智慧城市建设?
  20. win7装xp双系统_电脑怎样安装win10win7双系统 电脑安装win10win7双系统方法【详解】...

热门文章

  1. 利用shell脚本写一个系统性能分析工具
  2. 每天高效短睡4小时与饥饿的力量
  3. Excel——(分列)实施智能化选择
  4. Outlook共享日历编辑权限
  5. 判定表测试用例方法——实例
  6. 医学图像相关公开数据集
  7. 企业经济性裁减人员规定——劳动合同法小全书
  8. 360董事长周鸿祎:元宇宙代表着人类的没落
  9. C++ QT QTcpSocket基操
  10. Stave——让Fiddler拥有路径映射功能。