skynet源码解析(一)——编译和运行skynet
要想认识一个框架,首先要做的就是让它跑起来。
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相关推荐
- Android 4.0.1 源码下载,编译和运行
[牛人分享]Android 4.0.1 源码下载,编译和运行 转自 http://blog.csdn.net/rambo2188/article/details/6943382 ----------- ...
- skynet源码解析(三)——启动流程
对于你不了解的框架或者引擎,介绍再多的逻辑结构都好像有点茫然的感觉.所以小编认为,最有效的方式就是搞清楚框架启动流程的步骤,让自己心中有一条线可以牵引着. 当你在终端输入./skeynet examp ...
- libco源码解析(2) 创建协程,co_create
libco源码解析(1) 协程运行与基本结构 libco源码解析(2) 创建协程,co_create libco源码解析(3) 协程执行,co_resume libco源码解析(4) 协程切换,coc ...
- Flink 源码解析 —— 源码编译运行
更新一篇知识星球里面的源码分析文章,去年写的,周末自己录了个视频,大家看下效果好吗?如果好的话,后面补录发在知识星球里面的其他源码解析文章. 前言 之前自己本地 clone 了 Flink 的源码,编 ...
- 【阅读笔记】Taro转小程序编译源码解析
前言 这篇文章的主要是对taro/taro-tarnsformer-wx进行源码解析,对于想要了解Taro或者了解babel的人希望看了能得到一定的启发. 由于我文笔实在太烂,所以整篇文章都是以阅读笔 ...
- Mybatis运行原理及源码解析
Mybatis源码解析 一.前言 本文旨在mybatis源码解析,将整个mybatis运行原理讲解清楚,本文代码地址: https://github.com/lchpersonal/mybatis-l ...
- oracle job 每月前十天运行_Tensorflow源码解析7 -- TensorFlow分布式运行时
1 概述 TensorFlow架构设计精巧,在后端运行时这一层,除了提供本地运行时外,还提供了分布式运行时.通过分布式训练,在多台机器上并行执行,大大提高了训练速度.前端用户通过session.run ...
- 老李推荐:第8章2节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-解析处理命令行参数...
老李推荐:第8章2节<MonkeyRunner源码剖析>MonkeyRunner启动运行过程-解析处理命令行参数 MonkeyRunnerStarter是MonkeyRunner启动时的入 ...
- 【深度学习实战03】——YOLO tensorflow运行及源码解析
本文章是深度学习实战系列第三讲文章,以运行代码+源码分析 为主: 转载请注明引用自:https://blog.csdn.net/c20081052/article/details/80260726 首 ...
最新文章
- wpf mvvm 实例
- 第一章.良好应用程序基石(2)
- 浅谈SAP CRM开发——基本业务概念
- 【HDU - 5777】domino(贪心)
- python--从入门到实践--chapter 10 文件及错误
- mysql官网下载详细教程图文
- py---web学习笔记09(JQuery)
- CV笔记9:纹理特征之LBP特征(基于python实现)
- kali中清除历史命令
- Android9 更改系统默认输入法
- 课程设计——模仿网易云UI设计基础(超简单版)
- Android App开发动画特效中帧动画和电影淡入淡出动画的讲解及实战(附源码和演示视频 简单易懂)
- 牛客网——MySQL数据库练习
- html中版心居中怎么写,CSS 版心和布局
- 手机拍照-基础构图小结
- 如何把多线程下载的数据按位置写入一个文件
- c语言中反比例函数定义,数学反比例函数知识点
- focusky怎么制作html5,一款简单易上手的3D动态PPT制作软件Focusky
- PPP模式如何激活智慧城市建设?
- win7装xp双系统_电脑怎样安装win10win7双系统 电脑安装win10win7双系统方法【详解】...