我有一个用C和Tcl编写的项目,我试图调试它。主要部分用C语言编写,GUI用Tcl编写。我是Tcl的新手。我尝试使用lldb来调试它,但只要C程序调用
Tk_Main(TKARGS, myargv, Tcl_AppInit);
lldb完全不起作用,即使一些Tcl命令是用C语言编写的。我该怎么调试它?
答案 0 :(得分:0)
在一起调试C / C ++和脚本语言时,您不能期望LLDB知道如何进行源代码级调试。它只知道C / C ++(或更确切地说,DWARF符号)。
因此,如果您希望从脚本语言中调用C代码时出错,则需要设置断点&然后操作程序来触发呼叫。
当崩溃出现时,你应该使用" bt" -command来获取你在堆栈跟踪中的位置,并使用断点进一步调查。