Debugging 32/64 bit binaries on os/x 10.7 with cvs gdb?

Tristan Gingold gingold@adacore.com
Wed Nov 30 07:47:00 GMT 2011


On Nov 29, 2011, at 9:32 PM, Robert Lupton the Good wrote:

> If I build gdb from source on os/x 10.7 and attempt to debug python (a 32/64 bit binary), gdb says;
> 
>> $ ~/Src/gnu/gdb/gdb /usr/bin/python
>> GNU gdb (GDB) 7.3.50.20111109-cvs
>> Copyright (C) 2011 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
>> and "show warranty" for details.
>> This GDB was configured as "x86_64-apple-darwin11.2.0".
>> For bug reporting instructions, please see:
>> <http://www.gnu.org/software/gdb/bugs/>...
>> "/usr/bin/python": not in executable format: File format not recognized
>> (gdb) quit
>> $ file !$
>> file /usr/bin/python
>> /usr/bin/python: Mach-O universal binary with 2 architectures
>> /usr/bin/python (for architecture x86_64):      Mach-O 64-bit executable x86_64
>> /usr/bin/python (for architecture i386):        Mach-O executable i386
> 
> Is there a way to build gdb to work around this?

No.  Currently gdb is not able to debug fat binary.  Use lipo to extract the architecture you want to use.




More information about the Gdb mailing list