Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

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".
share|improve this question
add comment

2 Answers

up vote 3 down vote accepted

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.

share|improve this answer
    
Now I know that the groups shown in the GUI are not the real ones ;-) Thank you! –  Pietro Sep 13 '11 at 21:53
add comment

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

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.