mac安装gdb调试工具的方法

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

查看是否已安装

$ gdb -v
GNU gdb (GDB) 8.2

表明已经安装,如果未安装则进行后续步骤

使用brew安装

搜索gdb

$ brew search gdb
==> Formulae
cgdb            gdb ✔           gdbm ✔          i386-elf-gdb    pgdbf
==> Casks
macgdbp

符合条件的gdb结果显示出来了

安装

$ brew install gdb
==> Downloading https://homebrew.bintray.com/bottles/gdb-8.2_1.high_sierra.bottl
######################################################################## 100.0%
==> Pouring gdb-8.2_1.high_sierra.bottle.tar.gz
==> Caveats
gdb requires special privileges to access Mach ports.
You will need to codesign the binary. For instructions, see:

  https://sourceware.org/gdb/wiki/BuildingOnDarwin

On 10.12 (Sierra) or later with SIP, you need to run this:

  echo "set startup-with-shell off" >> ~/.gdbinit
==> Summary
?  /usr/local/Cellar/gdb/8.2_1: 55 files, 10.3MB

不报错,则安装完成

使用gdb

编写简单c源码

$ vim hello.c
写入以下内容:
#include 
int main(){
    int a = 5;
    printf("hello world %d\n", a);
    return 0;
}

然后执行以下后续步骤:
$ gcc -g hello.c -o hello.o
$ gdb ./hello.o
(gdb) start  // 开始调试
(gdb) p a   // 输出a变量值
(gdb) q     退出调试

解决gdb启动调试时出现的问题

启动调试时,可能会出现如下:

(gdb) start
Temporary breakpoint 1 at 0x100000ef4
Starting program: /xxxx/hello.o
Unable to find Mach task port for process-id xxx: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))

此时还不能正常使用gdb,主要还是mac的安全问题。

配置gdb相关证书(自己手动生成)

打开钥匙串访问

mac安装gdb调试工具的方法_第1张图片

创建证书

mac安装gdb调试工具的方法_第2张图片

mac安装gdb调试工具的方法_第3张图片

一直点击继续,直到完成。

更改证书位置

默认创建的是登录证书,而我们需要的是系统证书。则在侧边栏选择登录,将gdb-cert选择,直接拖到系统菜单即可。

mac安装gdb调试工具的方法_第4张图片

mac安装gdb调试工具的方法_第5张图片

代码签名

执行已下命令:

codesign -s gdb-cert /usr/local/bin/gdb

转载于:https://my.oschina.net/who7708/blog/2985965

你可能感兴趣的:(python)