How do I install GDB on MacOS 10.13.3 (High Sierra)

后端 未结 3 2070
陌清茗
陌清茗 2020-12-28 23:22

There are tons and tons of post and blogs discussing this topic, but nothing seems to work...

From across the internet, here is the common consensus regarding the pr

相关标签:
3条回答
  • 2020-12-28 23:28

    I got gdb working on Mojave yesterday by:

    a) getting the latest gdb source archive (at time of writing, ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-8.2.50.20190212.tar.xz

    b) build gdb. I got errors for variable shadowing in darwin-nat.c so I edited the file and rebuilt.

    c) follow steps in https://forward-in-code.blogspot.com/2018/11/mojave-vs-gdb.html

    Voila!

    (source: GDB on Mac/Mojave: During startup program terminated with signal ?, Unknown signal)

    0 讨论(0)
  • 2020-12-28 23:29

    Maybe a bit of unrelated:

    Mac OS Sierra 10.13.6 gdb 8.0.1

    had the same error as topic-starter.

    https://gist.github.com/gravitylow/fb595186ce6068537a6e9da6d8b5b96d

    I discovered that I already had gdbcert1 in my System. Followed everything from 7. Works!

    0 讨论(0)
  • 2020-12-28 23:33

    After hours and hours of searching, I finally found an obscure gist identifying the issue and detailing the solution.

    TL;DR The GNU Debugger requires a patch before it can work with MacOS. gdb v8.0.1 is the last known good version of GDB for MacOS.

    1. Uninstall the latest version of gdb (i.e. v8.1)

      brew uninstall --force gdb
      
    2. Force Homebrew to install a version of gdb with the patch for MacOS.

      brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/c3128a5c335bd2fa75ffba9d721e9910134e4644/Formula/gdb.rb
      
    3. Use the existing certificate to codesign the new install of gdb

      codesign -f -s  "<GNU GDB Certificate>" $(which gdb)
      

    Now, gdb works as expected!

    Special thanks to https://github.com/marcoparente and https://github.com/lokoum for their gist comments!

    0 讨论(0)
提交回复
热议问题