Coder Social home page Coder Social logo

evanlabs / skynet-mingw Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dpull/skynet-mingw

0.0 1.0 0.0 122 KB

对skynet无任何改动的windows版

Home Page: http://www.dpull.com/blog/2015-11-08-skynet_mingw

License: MIT License

Makefile 10.53% Lua 9.75% C 68.17% C++ 10.85% Shell 0.71%

skynet-mingw's Introduction

关于skynet-mingw Build status

skynet-mingwskynet的windows平台的实现。其主要特点是:

  1. skynet 以submodule链接,方便升级,确保不改
  2. 仅扩展了700行代码,方便维护。
  3. 自动更新skynet,自动构建,自动化测试,确保质量。

编译

不想自行编译的朋友可访问 自动构建平台获取最新的构建版本

  1. 安装 MinGW
  2. 安装 gcc g++
  3. 安装 pthread (dev)
  4. 运行 MinGW\msys\1.0\msys.bat
  5. 运行 prepare.sh
  6. 运行 make

常见问题

  1. 建议使用 MinGW\msys\1.0\msys.bat 进行编译
  2. 错误: gcc: Command not found, 解决: 修改 msys\1.0\etc\fstab 中的 /mingw 路径
  3. 当提示缺少类似dlfcn.h文件时,建议看看头文件搜索路径是否有问题,举个例子perl(Strawberry Perl)中有gcc程序,同时它注册了系统环境变量

测试

./skynet.exe examples\\config    # Launch first skynet node  (Gate server) and a skynet-master (see config for standalone option)
./3rd/lua/lua examples/client.lua   # Launch a client, and try to input hello.

已知问题

  1. console服务不可用(无法对stdin进行select), 会提示如下出错信息,暂时没有解决方案。
stack traceback:
        [C]: in function 'assert'
        ./lualib/socket.lua:361: in function 'socket.lock'
        ./service/console.lua:15: in upvalue 'func'
        ./lualib/skynet.lua:452: in upvalue 'f'
        ./lualib/skynet.lua:105: in function <./lualib/skynet.lua:104>
  1. 使用skynet.abort无法退出,看堆栈卡在了系统中,暂时没有解决方案。(替代方案os.exit(true)
#0  0x77bd718c in ntdll!ZwWaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\ntdll.dll
#1  0x74c0a4fa in WaitForMultipleObjectsEx () from C:\WINDOWS\SYSTEM32\KernelBase.dll
#2  0x74c0a3d8 in WaitForMultipleObjects () from C:\WINDOWS\SYSTEM32\KernelBase.dll
#3  0x6085be1c in pause () from D:\MinGW\msys\1.0\bin\msys-1.0.dll
#4  0x6085ccf1 in msys-1.0!cwait () from D:\MinGW\msys\1.0\bin\msys-1.0.dll
#5  0x6080dff4 in msys-1.0!cygwin_stackdump () from D:\MinGW\msys\1.0\bin\msys-1.0.dll
#6  0x00413fe5 in ?? ()
#7  0x00413e8f in ?? ()
#8  0x00412a1b in ?? ()
#9  0x0040f77b in ?? ()
#10 0x0040f151 in ?? ()
#11 0x00403869 in __mingw_opendir ()
#12 0x0000000a in ?? ()
#13 0x0069fe30 in ?? ()
#14 0x00000000 in ?? ()

相关文档

开发笔记

skynet-mingw's People

Contributors

dpull avatar srdgame avatar michaeloujie avatar evanlabs avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.