我最近从Mac OS X 10.7升级到10.9.由于OS X不再支持gdb,我通过macports安装了GNU gdb.在能够使用之前,我必须按照此处的描述对其进行编码.现在我可以使用gdb作为调试器,但是在附加到进程时我在设置断点时遇到问题.我会为你做一个例子.我拿了这个示例C代码
#include <unistd.h>
#include <stdio.h>
void f() {
printf("f()\n");
}
int main() {
printf("sleeping 30 seconds...\n");
sleep(30);
printf("invoking f()\n");
f();
}
Run Code Online (Sandbox Code Playgroud)
并用它编译
gcc -g a.c
Run Code Online (Sandbox Code Playgroud)
如果我现在尝试通过做调试
gdb a.out
Run Code Online (Sandbox Code Playgroud)
并在gdb中运行它,结果如下(正如预期的那样)
GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show …Run Code Online (Sandbox Code Playgroud)