

gdbでデバッグをしようとしてrunをすると

[code]

    (gdb) break main
    Breakpoint 1 at 0x100000f3f: file helloworld.c, line 4.
    (gdb) run
    Starting program: /Users/RS/Desktop/prog/a.out 
    [New Thread 0x1903 of process 28784]
    [New Thread 0x1c03 of process 28784]
    During startup program terminated with signal ?, Unknown signal
    
[/code]

となってプログラムが動きません。

また、

[code]

    During startup program terminated with signal SIGTRAP
    
[/code]

となって終了する場合もあります。  
何が問題なのでしょうか。  
また、どうすれば解決できるのでしょうか。

OSはmacOS High Sierra 10.13.1です。


CC BY-SA 4.0
2018-05-01T15:36:01.363
43705
2018-05-02T00:19:07.950
2018-05-02T00:14:03.917
3060
28381
question
c++ c macos gdb
gdbでプログラムが動かない


Sierra 以降で gdb を使うときによくあるトラブルだそうで、英語版SOにも同様の質問があります。

[GDB kind of doesn't work on macOS
Sierra](https://stackoverflow.com/questions/39702871/gdb-kind-of-doesnt-work-
on-macos-sierra/40437725#40437725)

`~/.gdbinit` に `set startup-with-shell off` と書くとか、gdb
を新しいものにバージョンアップするなどで解決できるかもしれません。

自分も同様のトラブルに遭遇したことがありますが、gdb の使用を諦めて lldb を使っています。


CC BY-SA 4.0
2018-05-02T00:19:07.950
43711
2018-05-02T00:19:07.950
3475
43705
answer