既然ZeroBrane都是用Lua编写的,那么它实际上能在Lua环境中启动吗?
主要的动机是将它完全集成到一个现有的应用程序中(运行在同一个线程中),能够使用所有公开的C/C++功能在本地调试。
我意识到,我必须将ZeroBrane使用的剪贴器的体系结构与主机应用程序中使用的clibs结构相匹配。例如,如果主机应用程序运行的是LuaJIT 64位,那么我就需要针对相同的LuaJIT二进制文件编译wx.dll。
在尝试这样做的时候,还会有其他的障碍或限制吗?
发布于 2021-06-20 06:57:37
既然ZeroBrane都是用Lua编写的,那么它实际上能在Lua环境中启动吗?
这个问题的答案肯定是“是”,因为这就是ZeroBrane实际上所做的。例如,在Windows上,它通过加载和执行src/main.lua来启动自己;这段代码可以在starter.c中看到。
在尝试这样做的时候,还会有其他的障碍或限制吗?
我认为您可能会遇到的问题是,很难从它本身调试一个单线程应用程序(虽然不是不可能的)。这就是为什么IDE (及其调试器)通常是作为一个单独的进程启动的,该进程与正在通过套接字调试的应用程序进行交互。您可能需要检查debugger.lua,这可能更接近您正在寻找的内容。
https://stackoverflow.com/questions/68052933
复制相似问题