首页 > 其他分享 >openwrt上使用emmylua + emmyluadebugger + clion调试luci

openwrt上使用emmylua + emmyluadebugger + clion调试luci

时间:2024-03-20 19:56:54浏览次数:15  
标签:emmyluadebugger EmmyLuaDebugger emmylua EmmyLua lua clion luci openwrt

lua-emmyluadebugger

A OpenWrt package of EmmyLuaDebugger

IntelliJ-EmmyLua是一个给JetBrains全家桶用的lua插件,也有VSCode版本VSCode-EmmyLua插件。

EmmyLuaDebugger是配合IntelliJ-EmmyLua使用的remote debugger, C++编写供lua调用的动态库(emmy_core.so),相比于我以前使用的mobdebug具有更高的性能。

lua-emmyluadebugger是EmmyLuaDebugger的OpenWrt包,host cmake最低版本需要3.15(使用openwrt v19.07的即可),不然要修改EmmyLuaDebugger的CMakeLists.txt。

  • 使用方法(基于clion)

    • 安装Emmylua插件

    • 使用clion的deployment将openwrt根文件系统拉到开发机器上(openwrt的根文件系统编译好tftp,手动rsync也行)

    • clion添加一个配置:Run >> Edit Configuration >> + ,选择Emmy Debugger,然后配置参数,IDE这端作为Server所以connection选择Debugger connect IDE,配好本机ip和监听端口。

    • 拷贝clion上自动生成的lua代码到lua的入口文件/www/cgi-bin/luci的第一行

    -- openwrt上这句可以不要,因为库已经被安装到了/usr/lib/lua,在openwrt上这个已属于package.cpath了
    -- package.cpath = package.cpath .. ';/home/a/.local/share/JetBrains/CLion2023.3/EmmyLua/debugger/emmy/linux/?.so'
    local dbg = require('emmy_core')
    dbg.tcpConnect('192.168.3.3', 9966)
    
    • 下一个断点,进入luci的web,好了,debug吧。

标签:emmyluadebugger,EmmyLuaDebugger,emmylua,EmmyLua,lua,clion,luci,openwrt
From: https://www.cnblogs.com/thammer/p/18085943

相关文章

  • Openwrt编译教程
    注意:不要用root用户进行编译国内用户编译前最好准备好梯子默认登陆IP192.168.1.1密码password编译命令:首先装好Linux系统,推荐Debian11或UbuntuLTS安装编译依赖sudoaptupdate-ysudoaptfull-upgrade-ysudoaptinstall-yackantlr3asciidocaut......
  • OpenWrt之Transmission报错
    OpenWrt之Transmission报错浏览器http://192.168.1.1:9091/transmission/输入后,报错为404,具体如下:Couldn'tfindTransmission'swebinterfacefiles!修复教程:进入路由器,编辑/etc/init.d/transmission这个文件在这个文件的快结尾处,注释掉这句procd_add_jailtransmissio......
  • OpenWrt更换软件源
    由于OpenWrt官方软件源服务器在国外,会遇到国内访问速度慢甚至无法访问的情况。我们可以将软件源切换为国内镜像软件源,以提升软件下载速度。详情可查阅对应镜像源的帮助说明更换方法打开系统->软件包点击配置opkg来修改opkg使用到的各个配置文件将/etc/opkg/distfeed......
  • vyos mikrotik openwrt vlan config
    vyosmikrotikopenwrtvlanconfig vyos@vyos:~$showconfigurationallfirewall{all-pingenablebroadcast-pingdisableconfig-trapdisableipv6-receive-redirectsdisableipv6-src-routedisableip-src-routedisablelog-mart......
  • Openwrt罢工后重新配置记录
    春节回乡过年,远程登陆时发现,socat端口转发有点儿问题,无法访问自己的NAS。尝试重启openwrt,结果直接跪了,再也无法登录了。返京后摸索了半天,发现是安装系统的U盘可能是不行了,导致配置无法存储,每次重启系统都会直接复位。本来想一不做二不休,直接把系统装到买软路由时送的mSAT......
  • openWrt使用rclone挂载webDav
    前言觉得路由器(linux)硬盘太小,又不好扩展(x86机器可以插硬盘、但arm机器的硬盘是焊死的无法扩展)。这个时候,我们可以通过davfs或者rclone将外部资源如webDav挂载到本机上用来作为自己的硬盘。安装rclone#新版的rclone依赖fuse3,所系需要安装(尽管rclone的子依赖包含fuse但那是旧版......
  • 升腾C92 刷 OpenWrt 作旁路由设置 DNS 服务、扩容分区、设置 swap
    最新博客文章链接文字更新时间:2024/02/04一直知道OpenWrt经常拿来做软路由软件。最近买了个二手小主机升腾C92来做旁路由服务器,其被归为瘦客户机一类,感觉和工控机差不多,现价百元以内。想就着这个机会,了解体验一下OpenWrt。大体思路下载预设置好的固件,制作U盘启动盘,设......
  • Openwrt Aira2 AiraNg报错:认证失败
    配置完成aria2后,可以进入AiraNg:第一次登陆ariang时会出现的报错,具体解决方案,就是将aria2中配置RPCOptions的RPCtoken,填写到AriaNgSetting->RPC->Aria2RPCSecretToken中,具体如下:认证成功,可以看到Aria2Status为connected。注意:截图中的mywrt.com是笔者的RouterID绑定的h......
  • OpenWrt之自定义Hostname
    OpenWrt之自定义Hostname找到对应的代码,在feeds/./luci/modules/luci-lua-runtime/luasrc/sys.lua中,有cur:foreach("dhcp","dnsmasq",function(s)ifs.leasefileandfs.access(s.leasefile)then......
  • OpenWrt之自定义Firmware Version
    OpenWrt之自定义FirmwareVersion首先,找到显示FirmwareVersion的代码,在/usr/lib/lua/luci/version.lua中:root@OpenWrt:/usr/lib/lua/luci#catversion.lualocalpcall,dofile,_G=pcall,dofile,_Gmodule"luci.version"ifpcall(dofile,"/etc/openwrt_rele......