当前位置: 首页 > news >正文

Mac下VSCode调试skynet的lua环境配置

Mac下VSCode调试skynet的lua环境配置

      • 安装Lua5.4
      • 安装Luasocket
      • 下载LuaPanda.lua
      • 安装VScode LuaPanda插件
      • 配置skynet,在lua_cpath引入luasocket库
      • 创建launch.json
      • 在需要调试的lua文件里面添加代码

安装Lua5.4

brew install lua@5.4

安装Luasocket

LuaPanda需要luasocket这个第三方库,我们使用Luarocks来安装,Luarocks是Lua的包管理器,就像npm一样,它可以帮助我们下载、查找、删除Lua包

首先安装Luarocks, 到http://luarocks.org/releases/下载源码,我下载的是最新的3.11.1版本
https://luarocks.github.io/luarocks/releases/luarocks-3.11.1.tar.gz

tar -zxvf luarocks-3.11.1.tar.gz
cd luarocks-3.11.1
./configure && make && sudo make install
sudo luarocks install luasocket

下载LuaPanda.lua

https://github.com/Tencent/LuaPanda/tree/master/Debugger里面的LuaPanda.lua下载下来放到skynet/lualib目录下
这个文件是用来连接调试服务器的。

安装VScode LuaPanda插件

这个插件会开启调试服务器,并能下断点进行单步调试

配置skynet,在lua_cpath引入luasocket库

root = "./"
lua_cpath = root.."luaclib/?.so;".."/usr/local/lib/lua/5.4/?.so;"

创建launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "type": "lua",
            "request": "launch",
            "tag": "normal",
            "name": "LuaPanda",
            "description": "通用模式,通常调试项目请选择此模式 | launchVer:3.2.0",
            "cwd": "${workspaceFolder}/game",
            "luaFileExtension": "",
            "connectionPort": 8818,
            "stopOnEntry": true,
            "useCHook": false,
            "autoPathMode": true
        },
    ]
}

useCHook必须要false, 如果为true会有段错误,不知道为何。

在需要调试的lua文件里面添加代码

require("LuaPanda").start("127.0.0.1", 8818)

这段代码会连接VSCode调试服务端。

所有配置已经完成,我们来尝试调试一下,在你的lua文件中添加断点。 注意:必须要在require(“LuaPanda”).start(“127.0.0.1”, 8818)执行后 的断点才起作用。

按F5启动VScode调试服务端,

然后运行skynet

skynet game/config

是不是你的断点断下来了?

skynet.fork出来的方法是没办法下断的,目前还没有摸索出方法,有知道的朋友请告知一下。

参考:
https://blog.csdn.net/qq_41252394/article/details/124576105

相关文章:

  • 【前端基础篇】Day 1
  • Postman操作(接口测试、生成测试报告、MockServer等)
  • 检查模型配置参数
  • 软件测试的基础入门(一)
  • 一文详解U盘启动UEFI/Legacy方式以及GPT/MBR关系
  • 11、集合框架
  • HOW - 个人创业(融资篇)
  • 如何安装vm 和centos
  • python目录
  • db.session.delete是什么意思
  • 10分钟熟练掌握宝兰德中间件部署 iServer
  • 【数据结构第十六节】实现链式结构二叉树(详细递归图解—呕心沥血版!)
  • 嵌入式科普(32)指向寄存器的指针变量2---可变指针
  • 世优科技国内首家 MR 体验店开业,打造 MAS 任意门奇幻之旅
  • 基于PSO-LSTM长短期记忆神经网络的多分类预测【MATLAB】
  • IO进程 day05
  • MobileNet 改进:添加SpatialGroupEnhance 增加语义特征学习能力
  • STM32-智能小车项目
  • Python的PyTorch+CNN深度学习技术在人脸识别项目中的应用
  • #5【CVPR2024】PLACE:自适应布局语义融合
  • 做代理哪个网站靠谱吗/bt磁力搜索引擎在线
  • danbold做动漫的网站/百度竞价推广一个月多少钱
  • 深圳龙华住房和建设局网站/百度网站优化
  • 合肥网站制作哪家强/网络推广员上班靠谱吗
  • 微信开放品牌/网站建设seo
  • 有没有给人做简历的网站/深圳优化公司排名