I have an ELF executable file named app2 which is compiled under Linux, and it can not be debugged by GDB on a Mac. But there is no problem by using LLDB.
Peterx:Documents Peter$ file app2
app2: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, not stripped
and the gdb information:
Peterx:Documents Peter$ gdb app2
GNU gdb (GDB) 7.7
Copyright (C) 2014 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-darwin13.1.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
"/Users/Peter/Documents/app2": not in executable format: File format not recognized
Peterx:Documents Peter$ ./app2
-bash: ./app2: Permission denied
Set a breakpoint and then delete it.
Peterx:Documents Peter$ lldb app2
Current executable set to 'app2' (x86_64).
(lldb) b main
Breakpoint 1: where = app2`main + 8 at app2.c:4, address = 0x00000000004004fc
(lldb) br del 1
1 breakpoints deleted; 0 breakpoint locations disabled.
(lldb) quit