我正在开发一个项目,其中 Lua(更具体地说是 LuaJIT)是脚本语言,但大部分繁重的工作都是在 C 代码中执行的。C 代码被编译成 .so 文件,LuaJIT 的 ffi 功能用于加载库和访问函数。假设我在调用 C 函数的地方在 Lua 代码中设置了一个断点。那时我可以“进入”C 代码并继续单步执行 C 代码,就好像我在使用 gdb 一样?
问问题
81 次
我正在开发一个项目,其中 Lua(更具体地说是 LuaJIT)是脚本语言,但大部分繁重的工作都是在 C 代码中执行的。C 代码被编译成 .so 文件,LuaJIT 的 ffi 功能用于加载库和访问函数。假设我在调用 C 函数的地方在 Lua 代码中设置了一个断点。那时我可以“进入”C 代码并继续单步执行 C 代码,就好像我在使用 gdb 一样?
不; ZeroBrane Studio 调试器(它使用MobDebug)仅支持单步执行 Lua 代码。我认为没有集成单步执行 Lua 和 C 代码的调试器。不过,您也许可以使用两个调试器:一个用于 Lua,一个用于 C 代码。