美文网首页MacTribe(如何优雅的使用Mac)Mac开发云集
macOS High Sierra下无法使用gdb的解决办法

macOS High Sierra下无法使用gdb的解决办法

作者: GanTa | 来源:发表于2018-04-11 16:25 被阅读15次
    image

    原因

    主要是因为 gdb8.1 的问题和苹果系统的SIP机制,更换版本为8.0.1就可以解决问题

    步骤

    更换gdb

    brew unlink gdb
    brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/9ec9fb27a33698fc7636afce5c1c16787e9ce3f3/Formula/gdb.rb
    brew pin gdb
    

    证书签名

    打开应用程序Keychain

    Keychain Access > Certificate Assistant > Create Certificate...

    Name:gdb-cert
    Certificate Type: Code Signing
    

    一路点击 continue 直到选择证书存储位置处

    Keychain:System
    

    在左侧的system中找到新创建的gdb-cert,右键点击选择Get Info

    Trust > choose 'Always Trust'

    打开命令行

    killall taskgated
    codesign -fs gdb-cert /usr/local/Cellar/gdb/8.0.1/bin/gdb #如果你是homebrew下载的,可以用这个路径
    

    关闭系统SIP机制

    重启计算机,按住 command+R 直到logo出现进入recovery mode

    打开终端

    csrutil enable --without debug
    

    重启计算机,gdb应该会正常工作了。

    相关文章

      网友评论

        本文标题:macOS High Sierra下无法使用gdb的解决办法

        本文链接:https://www.haomeiwen.com/subject/fzlzhftx.html