8

I can only use the GNU Debugger (GDB) when authenticated as an administrator.

When I launch GDB as a standard user, after giving the GDB command "run", a dialog requests me for a user name and password of a user in the "Developer Tools" group.

The problem is that I already am in the "Developer Tools" group, so I do not know what else to do...

Thank you!

Platform:

  • MacOS X 10.7.1
  • GCC 4.2.1
  • i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
  • GNU gdb 6.3.50-20050815 (Apple version gdb-1705)
  • This GDB was configured as "x86_64-apple-darwin".

2 Answers 2

7

Are you positive you are in the Developer Tools group?

Try running this command

sudo dscl . append /Groups/_developer GroupMembership <username>

That should add your user account to the group.

1
  • Now I know that the groups shown in the GUI are not the real ones ;-) Thank you! Commented Sep 13, 2011 at 21:53
2

I had the same problem, it wouldn't run, except as root/sudo, which meant I couldn't use it with eclipse, which meant I lost 5 working hours debugging the problem. Here are my results.

Firstly, gdb generated a similar error message when executed under my user account.

Unable to find Mach task port for process-id 4667: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))

I tried code signing it by creating a certificate using Keychain, then marking the certificate as trusted for code signing. Then applying it to the executable from the command line.

codesign -s gdb-cert /usr/local/Cellar/gdb/7.6.1/bin/gdb
codesign --verify --verbose  /usr/local/Cellar/gdb/7.6.1/bin/gdb
codesign -d --verbose  /usr/local/Cellar/gdb/7.6.1/bin/gdb

That didn’t work

I tried adding my user account to the procview, procmod, and _developer groups (probably insecure, but I only deploy my code to github, and don't use the machine for personal use, so I can live with that)

sudo dscl . append /Groups/procmod GroupMembership bryanhunt

sudo dscl . append /Groups/procview GroupMembership bryanhunt

sudo dscl . append /Groups/_developer GroupMembership bryanhunt

That didn't work

Finally, I tried changing the executable's group and group sticky bit.

sudo chgrp procmod /usr/local/Cellar/gdb/7.6.1/bin/gdb
sudo chmod g+s /usr/local/Cellar/gdb/7.6.1/bin/gdb

That worked

1
  • no matter what I do, I get the below error. Anything that you might know to help me. Starting program: /Users/nakulchawla/POPL/proj5/a.out Unable to find Mach task port for process-id 571: (os/kern) failure (0x5). (please check gdb is codesigned - see taskgated(8)) Commented Nov 24, 2016 at 12:22

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.