我有一个python脚本,它扩展了gdb进行C调试。我运行gdb project_name/gdb/target.elf
来启动gdb。我在Windows 10上使用cygwin终端。当我在gdb控制台中时,我键入source project_name/gdb/debug.py
。在我的debug.py文件中,我有一个类StartupHandler:
class StartupHandler(gdb.Command):
def __init__ (self):
super (StartupHandler, self).__init__ ("startup-handler", gdb.COMMAND_NONE)
def invoke (self, args):
正在使用代码StartupHandler()
对其进行序列化。之后,我可以在gdb控制台中运行startup_handler args
,该控制台调用invoke()
方法,进行一些初始化。之后,我可以调试我的目标
现在,我想在另一个名为project_name/gdb/debug_data.py
的文件中project_name/gdb/debug.py
使用一些全局变量,并导入像from debug_data import var1
这样的全局变量
通过从新文件导入全局变量,我得到了错误:
File "c:\current\share\gdb/python\gdb\__init__.py", line 130, in _execute_file
exec(compiled, globals, globals)
File "project/gdb/debug.py", line 17, in <module>
from debug_data import var1
ModuleNotFoundError: No module named 'debug_data'
当我在gdb控制台中键入source hymap/gdb/debug.py
时。
有人知道为什么gdb中的python解释器抛出ModuleNotFoundError吗
目前没有回答
相关问题 更多 >
编程相关推荐