在windows下搭建skynet开发环境之二——skynet下载安装和运行

        本文接上篇,在windows下搭建skynet开发环境之一——安装虚拟机软件和系统

2.下载skynet源码

创建一个文件夹,如:skynet

如安装过git,在创建的文件夹中右键点击,选择“git bash here”菜单,打开git命令行窗口

在命令行窗口输入: git clone https://github.com/cloudwu/skynet.git

注意国内的网络访问github可能非常慢,所以有条件的话最好架个梯子。

如果没有安装git客户端,也可以直接访问GitHub - cloudwu/skynet: A lightweight online game framework

下载skynet的压缩包,放到刚创建的目录里面解压,

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第1张图片

3.向虚拟机共享文件夹

打开虚拟机软件,选中上篇建立的虚拟机,在工具栏点击设置按钮,打开设置界面;

点击共享文件夹,将上一步创建的文件夹共享到虚拟机。

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第2张图片

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第3张图片

 

这一步我们还要让虚拟机中的共享文件夹中可以建立软链接,否则后面skynet会编译失败,方法:

以管理员身份运行CMD命令行,cd进入VirtualBox的安装目录,执行命令:

VBoxManage setextradata XXXXX VBoxInternal2/SharedFoldersEnableSymlinksCreate/***** 1,

其中XXXXX为虚拟机名,*****为共享文件名,我这里都为skynet,所以实际执行为:

VBoxManage setextradata skynet VBoxInternal2/SharedFoldersEnableSymlinksCreate/skynet 1

 可以执行:

VBoxManage getextradata 虚拟机名 enumerate

命令查看设置是否成功

下一步我们进入虚拟机系统,将共享文件与linux里面的一个文件夹进行绑定。

在VirtualBox里面选中前面创建的虚拟机,点击工具栏上的启动按钮,直到进入一下界面:

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第4张图片

输入前面设置的用户名和密码进行登录,输入 ifconfig命令,查看ip地址,如我们这里的ip地址是

192.168.40.117

 在windows下搭建skynet开发环境之二——skynet下载安装和运行_第5张图片

 下面我们用ssh方式连接系统,这样比较方便,可以复制和粘贴内容。可以直接用CMD工具ssh连虚拟机,不过最好装个ssh工具,如Xshell,这里我们用CMD方式来讲解连虚拟机。

打开一个文本编辑器,输入内容 “ssh XX@*********” ,并保存为bat格式(如:虚拟机.bat),XX是虚拟机的用户名,*********是虚拟机的IP,也就是上面的192.168.40.117;

双击上面生成的bat文件,连接虚拟机,第一次打开会提示

输入yes,然后会提示你输入密码,以后每次要连虚拟机就直接运行这个bat文件,直接输入密码就可以了,(ps:这里可以考虑生成一对公私钥文件,将公钥放到虚拟机里面,这样就不用每次都输入密码,这个实现方式以后再说,大家也可以网上查询相关教程,自己实现这个方法),输入密码之后,就连上了虚拟机系统。

 在虚拟机中创建一个文件夹,用于跟windos上的共享文件进行绑定,执行命令:sudo mkdir /app

安装虚拟文件工具,执行命令: sudo apt-get install virtualbox-guest-utils

将新建的文件与共享文件进行绑定,执行命令: sudo mount -t vboxsf skynet /app

设置开机自动挂,执行 sudo vim /etc/fstab 在编辑的fstab文件后面下面这一行:

skynet /app vboxsf defaults 0 0

然后保存退出 ,这样我们就把windos下的共享文件夹skynet与虚拟机中的/app目录固定绑定在一起了,重启虚拟机,我们进入虚拟机的 /app目录,cd /app , ls,看到里面已经有skynet的代码了

 

4.在虚拟机系统中安装软件支持;

我们想要编译skynet,还需要有几个软件的支持,执行以下命令:

sudo apt install gcc  

sudo apt install autoconf

sudo apt install libreadline-dev

sudo apt install make

出现Do you want to continue? [Y/n]提示,直接输入y

5.编译skynet;

进入skynet源码目录 cd /app/skynet

执行编译  make linux 

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第6张图片

 没有报错,说明编译成功

6.运行skynet;

在 /app/skynet目录运行 ./skynet examples/config ,我们可以看到以下输出,说明启动成功

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第7张图片

7.验证skynet运行;

我们再次双击前面建立的批处理文件,重新建立一条ssh连接,进入 /app/skynet目录运行: ./3rd/lua/lua examples/client.lua ,我们将看到以下输出:

在windows下搭建skynet开发环境之二——skynet下载安装和运行_第8张图片

说明服务器处理正常;

 再次建立一条到虚拟机的ssh连接,用于验证skynet的监控功能,输入以下命令:

telnet 127.0.0.1 8000 ,提示如下,说明监控正常

 试试skynet的几个常用监控命令:list\mem\stat\netstat

 在windows下搭建skynet开发环境之二——skynet下载安装和运行_第9张图片

一切ok,至此我们就可以很方便地在windos下开发skynet的c和lua代码,在linux系统运行和调试了

后记:skynet的代码相对还是比较难读,其只能在linux下运行调试也是个槽点,对很多人来说学习和使用都不是很方便。笔者从上家公司接触了golang语言,发现真是个简单方便地语言,其简单的语法、相对脚本语言的高效运行、跨平台编译等功能都让人倾心,如以后有机会有时间,希望自己能用go语言重写一版skynet的实现 。

你可能感兴趣的:(lua学习,大数据,windows,ubuntu)