用 Tcl 调试 C

Debugging C with Tcl

我有一个用 C 和 Tcl 编写的项目,我正在尝试调试它。主要部分用C编写,GUI用Tcl编写。我是 Tcl 的新手。我尝试使用lldb来调试它,但是C程序一调用

Tk_Main(TKARGS, myargv, Tcl_AppInit);

lldb 根本不起作用,即使一些Tcl 命令是用C 编写的。我如何调试它?

当一起调试 C/C++ 和脚本语言时,您不能指望 LLDB 知道如何对两者进行源代码级调试。它只知道 C/C++(或更准确地说,DWARF 符号)。

因此,如果您希望您的 C 代码在从脚本语言中调用时出错,您需要设置一个断点,然后运行程序来触发调用。

当出现崩溃时,您应该使用 "bt" 命令来了解您在堆栈跟踪中的位置,并使用断点进一步调查。