OS X v10.9(Mavericks)中缺少GDB


108

我去了OS X v10.9(Mavericks)中使用GDB,但它不存在。它去哪了?

# /usr/lib/gdb
-bash: /usr/bin/gdb: No such file or directory
# gdb
-bash: gdb: command not found

我还启动了Xcode 5.0.1:

首选项>下载

..并且不再有命令行工具可用-ffs!


命令行工具可以在developer.apple.com/downloads/上找到。 要到达那里,请从XCode转到XCode> Open Developer Tool> More Developer Tools ...
Parker

编辑:没关系,因为命令行工具中也缺少GDB ...
Parker

3
自从我问了这个问题以来,许多人问我曾经使用过什么./configure选项:./configure --prefix=/usr/local --enable-targets=x86_64-apple-darwin13.0.0 --enable-64-bit-bfd --disable-werror --build=x86_64-apple-darwin13.0.0 --host=x86_64-apple-darwin13.0.0 --target=x86_64-apple-darwin13.0.0
l'L'l

Answers:


142

gdb已被替换lldb,并且不再受支持。gcc并且llvm-gcc也消失了,由代替clang


2
有没有办法仍然使用gdb?
欧莱雅L'升

不是我知道的。您可以自己构建它(例如,通过自制程序),但我不知道它的效果如何。
Catfish_Man

嗨,fish鱼先生,我知道了。它只需要使用正确的./configure命令:) thx从源代码进行编译!
2013年

2
我也对./configure感到好奇。我使用默认设置进行构建,除附加到实时进程外,其他所有操作均正常。符号错误,当我按ctrl-C时它会崩溃。
RawwrBag

1
我通过brew安装,并且在尝试加载可执行文件时,始终收到“ _____:不是可执行文件格式:无法识别文件格式”的信息。谁能评论他们如何成功安装?
派克,

38

您可以使用Homebrew将其安装在Mavericks上。

brew install homebrew/dupes/gdb

brew install dupx不断告诉我checking for gdb... no
lajarre

1
这对我在Maverics上不起作用。自制软件给了我一个错误,安装似乎有很多未解决的问题。
Dan Bradbury 2014年

这几乎对我有用,然后抱怨GDB没有正确签名(当我实际上试图用它调试某些东西时)。
mpontillo 2014年

1
仅供参考:这对我有用。我想不同的人对此有不同的难度。如果能够安装,请确保在此处查看签名说明。
尼尔·特拉夫特

2
我也遇到了签名错误,但是当我运行sudo gdb target时就解决了。
Vlad Lifliand 2014年

9

此Homebrew命令可在Mavericks上安装GDB工具:

brew install https://raw.github.com/Homebrew/homebrew-dupes/master/gdb.rb

@Sławosz brew install gdb似乎正在(在Mavericks上)工作。
amertkara 2014年

3

谢谢,我。我使用了您的./configure选项,并且像一个超级按钮一样工作。下一步是告诉OS X我们允许GDB进行调试。这是通过在钥匙串中创建证书,将其导出,然后sudo codesing -s gdb-cert /route/to/gdb提供证书来完成的。

请参阅GDB Wiki详细说明


2

我从Maverics的源代码编译了GDB。

我更改了makefile(在./configure之后)以抑制一些本应是警告的错误...(添加了-Wno-string-plus-int)

Line 385:
CFLAGS = -g -O2 -Wno-string-plus-int

Line 388:
CXXFLAGS = -g -O2 -Wno-string-plus-int

不知道两者是否都是必要的。

事实证明,标准版本不支持从.app文件进行调试(这是使用Carbon接口的Lazarus应用程序所需要的)

如果您想自己做,请点击以下链接:https : //sourceware.org/gdb/wiki/BuildingOnDarwin


这可能行不通。我过去曾尝试过,生成的gdb无法调试应用程序。
jww 2014年

设置CFLAGS =“-I / usr / local / include”后,我也能够在Mavericks上从源代码进行编译,因此它选择了libintl.h。不过请不要忘记对代码签名,否则gdb将无法正常工作。有关信息,请参见ntraft.com/installing-gdb-on-os-x-mavericks。所有这些的最终结果是在NetBeans中成功调试(这是获得GDB的主要原因)。
Pete855217


1

就我而言,我可以通过以下步骤在OS X上运行它:

  1. 设置GDB Homebrew完全类似于此处所述http://wiki.lazarus.freepascal.org/GDB_on_OS_X_Mavericks_and_Xcode_5

  2. 然后将调试设置为Dwarf2:项目->项目选项。 在此处输入图片说明

如果运行/构建挂起,然后重新启动计算机(已通过任务验证或某些其他过程证书很可能未通过身份验证),则将调试设置恢复为“自动(-g)”,然后进行编译和运行(出现身份验证对话框并登​​录),然后将调试设置更改为“ Dwarf2”,它应该再次编译

如果在运行操作后GDB崩溃,请尝试始终停止它,以防止此身份验证失败。


0

您可以安装www.macports.org并安装GDB。但是,您必须等待Mavericks 的MacPorts安装程序,因为在撰写本文时尚未发布。


0

当我查看MacPorts WAS尚未可用于Mavericks,但现在可以了!

芬克仍然不是。

但是标准的GDB仍然不支持调试.app文件。


-1

运行此命令以安装命令行工具:

xcode-select --install

4
适用于OS X 10.9 Mavericks的CLT没有GDB,这是OP试图解决的问题。
Parker

-1

命令行工具未包含在新的Xcode中,但是您可以按照以下说明进行操作。(上面的Xcode选择注释对我不起作用。)

打开Xcode

在应用程序菜单项“ Xcode”中,选择“ 打开开发人员工具” →“ 更多开发人员工具 ...”。

这会将您带到具有大量软件的站点。继续下载并安装“ Xcode的命令行工具(OS X Mavericks)-2013年10月下旬”。

(贷给Jore https://discussions.apple.com/message/23513040#23513040


7
CLT没有适用于10.9的GDB-
帕克,

-4

在虚拟机中安装带有Xcode 4.6的Mac OS X v10.8(Mountain Lion)并获得乐趣)))

我使用VMware Fusion,但您可以尝试使用免费的VirtualBox。您可以从AppStore获得旧版本的MacOS,并从Apple Developer网站获得旧版本的Xcode。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.