如何在OSX 10.11 El Capitan下使用macport使gdb工作?

Ste*_*ton 3 macos gdb macports

这是因为如何在Mac OSX El Capitan中安装gdb(调试器)?.

我有在el capitan下工作的macport没有问题,并且安装了gdb端口,但我无法使代码签名工作.这一切似乎都有效.证书在那里并且设置了"始终信任".二进制显示:

$ codesign -d -v -v /opt/local/bin/ggdb 
Executable=/opt/local/bin/ggdb
Identifier=org.gnu.gdb
Format=Mach-O thin (x86_64)
CodeDirectory v=20100 size=25320 flags=0x0(none) hashes=1261+2 location=embedded
Signature size=1392
Authority=gdb-cert
Signed Time=23 Oct 2015, 07:56:53
Info.plist entries=4
TeamIdentifier=not set
Sealed Resources=none
Internal requirements count=1 size=88
Run Code Online (Sandbox Code Playgroud)

但我明白了

(gdb) r
Starting program: /Users/sal/Katiss/ecodriving 
Unable to find Mach task port for process-id 39278: (os/kern) failure (0x5).
(please check gdb is codesigned - see taskgated(8))
Run Code Online (Sandbox Code Playgroud)

当我尝试开始调试时.

有任何想法吗?

小智 7

我刚刚使用以下命令解决了这个问题.

sudo dseditgroup -o edit -a yourusername -t user procmod

这会将您添加到组中procmod.

这只是因为只有在用户procmod可以使用的功能task_for_pid,你可以发现自己的组/opt/local/bin/ggdbprocmod.