I'm under osx 10.8.4 and have installed gdb 7.5.1 with homebrew (motivation get a new gdb with new features such as --with-python etc... )
Long story short when I run debug within a c++ Eclipse project I get :
Error in final launch sequence
Failed to execute MI command:
-exec-run
Error message from debugger back end:
Unable to find Mach task port for process-id 46234: (os/kern) failure (0x5).
(please check gdb is codesigned - see taskgated(8))
Unable to find Mach task port for process-id 46234: (os/kern) failure (0x5).
(please check gdb is codesigned - see taskgated(8))
I have followed various suggestions for code signing
- https://sourceware.org/gdb/wiki/BuildingOnDarwin
- partly http://www.noktec.be/archives/1251 with various adjusts
So I did:
- Set up the certificate
- Sign the gdb -> codesign -s gdb-cert /usr/local/bin/gdb
When I re-run debugging in Eclipse I get same error as above "(please check gdb is codesigned - see taskgated(8))".
If I set back the gdb to the older gdb (in the gdb preferences of Eclipse) /usr/libexec/gdb/gdb-i386-apple-darwin the debugging runs as expected.
Any solutions / hints out there ?
Thx
Pelle
None of this worked for me and I had to go with a long run. Here is a full list of steps I've done to get it working.
Unfortunately, system certificate gave me
Unknown Error = -2,147,414,007
which is very helpful, so I had to go with a workaround.KeyChain Assistant -> Create certificate ->
Pick
login
,gdb-cert
,Code Signing
Copy/move certificate to the System keychain (enter password)
gdb-cert
) clickGet info
->Trust Always
startup-with-shell
Enter in console:
set startup-with-shell off
Remember configuration:
echo "set startup-with-shell off" >> ~/. gdbinit
Go to
System Preferences
->Users & Groups
->Unlock it
->Login Options
->Network Account Server
->Join
->Unlock it
->Edit
(menu) ->Enable Root User
sudo killall taskgated
codesign -fs gdb-cert "$(which gdb)"
PS. I end up using
lldb
because it just works (tutorial)