【问题标题】:How to use GDB Debugger on a macOS?如何在 macOS 上使用 GDB 调试器?
【发布时间】:2020-06-05 07:25:10
【问题描述】:

我目前使用的是运行 macOS Mojave 版本 10.14.5 的 2012 年中期 macbook Pro。我正在尝试使用 GDB 调试器来调试 C 语言代码。我已经使用 Homebrew 在我的计算机上安装了 gdb,但是它似乎不起作用。这是我在 VSCode 中从终端获得的输出:

steelwinds-MacBook-Pro:Chapter05 steelwind$ gdb ex2_dbg.out
GNU gdb (GDB) 9.1
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-darwin18.7.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 <RET> for more, q to quit, c to continue without paging--<RET>
Type "apropos word" to search for commands related to "word"...
Reading symbols from ex2_dbg.out...
Reading symbols from 
/Users/steelwind/HardWay/CandC++/CandC++/Chapter05/ex2_dbg.out.dSYM/Contents/Resources/
DWARF/ex2_dbg.out...
(gdb) run
Starting program: /Users/steelwind/HardWay/CandC++/CandC++/Chapter05/ex2_dbg.out 
Unable to find Mach task port for process-id 7502: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))
(gdb) q
steelwinds-MacBook-Pro:Chapter05 steelwind$ 

我不确定我是否错过了一个步骤,或者我应该做些什么而不是使用 Homebrew,但任何建议都是有帮助的。

【问题讨论】:

    标签: c macos visual-studio-code gdb gnu


    【解决方案1】:

    提示是这一行:please check gdb is codesigned - see taskgated(8)

    由于 Apple 的一项安全功能,您需要对 GDB 进行代码设计。操作方法如下:"please check gdb is codesigned - see taskgated(8)" - How to get gdb installed with homebrew code signed?

    【讨论】:

    • 我尝试了链接中的内容,但它不起作用。我仍然得到与上述终端输出相同的结果
    • 其实我相信我可能已经明白了。我在这里遵循了这些指示:sourceware.org/gdb/wiki/PermissionsDarwin
    猜你喜欢
    • 2018-12-18
    • 1970-01-01
    • 2021-06-02
    • 2012-03-04
    • 1970-01-01
    • 2011-06-07
    • 1970-01-01
    • 2021-11-02
    • 2017-01-30
    相关资源
    最近更新 更多