Reputation: 3785
system:
mac osx catalina (10.15.5)
gfortran 9.3.0 (from homebrew)
gdb 9.2 (from homebrew)
went through and followed these instructions: https://sourceware.org/gdb/wiki/PermissionsDarwin
trying to debug on this program just to learn:
! test.f90
program main
integer :: val
val = 1
print *, val
val = 2
print *, val
end program main
compile with:
gfortran test.f90 -Og -g -o test
then at the terminal
~/Coding/gdb
> ./test
1
2
~/Coding/gdb $
> gdb test
GNU gdb (GDB) 9.2
Copyright (C) 2020 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-darwin19.4.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"...
Reading symbols from test...
Reading symbols from /Users/a3r7lzz/Coding/gdb/test.dSYM/Contents/Resources/DWARF/test...
(gdb) run
Starting program: /Users/a3r7lzz/Coding/gdb/test
[New Thread 0x1803 of process 3054]
at this point nothing happens... it just hangs and can't kill it with Ctrl-C, I have to go to the activity monitor to kill gdb. Wondering if I have missed something in my setup, or if anyone has any other ideas why this might be
Upvotes: 9
Views: 4158
Reputation: 4429
This hang hits gdb bug: https://sourceware.org/bugzilla/show_bug.cgi?id=24069
You can install gdb from this source with patch:
brew install --force --build-from-source domq/gdb/gdb # a patched version based on 10.1
or you can
brew update
brew install gdb # use gdb 12.1
It works for me, and I found it from this link: https://gist.github.com/mike-myers-tob/9a6013124bad7ff074d3297db2c98247
Upvotes: 0
Reputation: 157
so before using gdb you have to create a ".gdbinit" file in your home directory. Now every time gdb starts it will execute the commands in this file. ".gdbinit" is a file you can drop in your home directory that gdb will parse when gdb launches, either from the command line or from within Xcode.
echo "set startup-with-shell off" >> ~/.gdbinit
run this command and gdb won't hang when you use run command aur r.
Upvotes: 13
Reputation: 35
You can kill the hang with Ctrl-Z.
Try running it several times, when setup correctly it seems to only work sometimes.
Upvotes: -1