不久前迷上了使用GDB,发现用它调试小程序时非常的高效。不用运用庞大的IDE。可是在Mac上使用它却碰到了一些问题。下面就汇总一下:
首先是安装MacOS上的包管理工具
Homebrew
,这个直接在搜索引擎上搜索关键字homebrew
,进入官网首页上就有命令行的安装方法。就不细说了。安装
homebrew
成功后,在命令行输入brew install gdb
安装GDB。GDB安装完成之后还不能使用,还需对GDB进行签名。这一步网上也有介绍,看这里就行
- 当对GDB签名完成后,发现可以在终端使用
gdb a.out
这类的方式运行了,但是当执行run
命令后,GDB会被强制中止。这种情况发生在我将MacOS系统升级到Sierra
之后,这里贴个解决办法的链接:gdb error with Sierra OS upgrade。主要原因就是苹果对系统有个完整性保护机制。看这里的文档Configuring System Integrity Protection,我们要想使GDB正常工作,目前找到的方法就是在对其签名之后,关闭系统的SIP
机制,然后重新启动就好。