Note: these instructions are for pre-Sierra MacOS. Sierra and newer users see https://gist.github.com/gravitylow/fb595186ce6068537a6e9da6d8b5b96d by @gravitylow.
If you are getting this in gdb on OSX while trying to run a program:
Unable to find Mach task port for process-id 57573: (os/kern) failure (0x5). (please check gdb is codesigned - see taskgated(8))
- Open Keychain Access
- In the menu, open Keychain Access > Certificate Assistant > Create a certificate
- Give it a name (e.g.
- Identity type: Self Signed Root
- Certificate type: Code Signing
- Check: let me override defaults
- Continue until it prompts you for: "specify a location for..."
- Set Keychain location to System
- Create a certificate and close assistant.
- Find the certificate in System keychains, right click it > get info (or just double click it)
- Expand Trust, set Code signing to
- Restart taskgated in terminal:
- Enable root account:
- Open System Preferences
- Go to User & Groups > Unlock
- Login Options > "Join" (next to Network Account Server)
- Click "Open Directory Utility"
- Go up to Edit > Enable Root User
codesign -fs gdbc /usr/local/bin/gdbin terminal: this asks for the root password
- Disable root account (see #10)