GDB fehlt in OS X 10.9 (Mavericks)

108

Ich habe GDB in OS X 10.9 (Mavericks) verwendet, und es ist nicht da. Wo ist es hingegangen?

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

Ich habe auch Xcode 5.0.1 gestartet:

Einstellungen> Downloads

..und es sind keine Kommandozeilen-Tools mehr verfügbar - ffs!

l'L'l
quelle
Befehlszeilentools finden Sie unter developer.apple.com/downloads/…. Um dorthin zu gelangen, gehen Sie von XCode zu XCode> Entwickler-Tool öffnen> Weitere Entwicklertools ...
Parker
EDIT: Egal, da GDB auch in den Kommandozeilen-Tools fehlt ...
Parker
3
Seit ich diese Frage gestellt habe, haben viele Leute gefragt, welche ./configure-Optionen ich verwendet habe, um dies zum Laufen zu bringen:./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

Antworten:

142

gdbwurde ersetzt durch lldbund wird nicht mehr unterstützt. gccund llvm-gccsind auch weg, ersetzt durch clang.

Catfish_Man
quelle
2
Gibt es trotzdem eine Möglichkeit, GDB zu verwenden?
l'L'l
Nicht dass ich wüsste. Sie könnten es selbst bauen (z. B. über Homebrew), aber ich weiß nicht, wie gut das funktionieren würde.
Catfish_Man
Hallo Mr. Catfish, ich habe es zum Laufen gebracht. Es musste nur mit dem richtigen Befehl ./configure aus dem Quellcode kompiliert werden :) thx!
l'L'l
2
Ich bin auch neugierig auf die ./configure. Ich habe mit den Standardeinstellungen erstellt und alles funktioniert außer dem Anhängen an Live-Prozesse. Die Symbole sind falsch und es stürzt ab, wenn ich Strg-C drücke.
RawwrBag
1
Ich habe über Brew installiert und erhalte immer wieder "_____: nicht im ausführbaren Format: Dateiformat nicht erkannt", wenn ich versuche, eine ausführbare Datei zu laden. Kann jemand kommentieren, wie sie eine erfolgreiche Installation erhalten haben?
Parker
38

Sie können es mit Homebrew auf Mavericks installieren.

brew install homebrew/dupes/gdb
Jakub Głazik
quelle
brew install dupxerzählt mir immer wiederchecking for gdb... no
lajarre
1
Bei Maverics hat das bei mir nicht funktioniert. Homebrew hat mir einen Fehler gegeben und es scheint einige offene Probleme mit der Installation zu geben.
Dan Bradbury
Dies funktionierte fast für mich und beschwerte sich dann, dass GDB nicht richtig signiert war (als ich tatsächlich versuchte, etwas damit zu debuggen).
mpontillo
1
Zu Ihrer Information: Das hat bei mir funktioniert. Ich denke, verschiedene Leute haben unterschiedliche Schwierigkeitsgrade. Wenn Sie es installieren können, suchen Sie hier nach Anweisungen zum Signieren.
Neil Traft
2
Ich habe auch den Signaturfehler erhalten, der jedoch behoben wurde, als ich sudo gdb target ausführte.
Vlad Lifliand
9

Mit diesem Homebrew-Befehl können GDB-Tools auf Mavericks installiert werden:

brew install https://raw.github.com/Homebrew/homebrew-dupes/master/gdb.rb
xin
quelle
@ Sławosz brew install gdbscheint jetzt zu arbeiten (an Mavericks).
Amertkara
3

Danke, ich bin ich. Ich habe Ihre ./configure-Optionen verwendet und wie ein Zauber gearbeitet. Der nächste Schritt besteht darin, OS X mitzuteilen, dass wir GDB das Debuggen erlauben. Dazu erstellen Sie ein Zertifikat über den Schlüsselbund, exportieren es und geben dann sudo codesing -s gdb-cert /route/to/gdbdie Anmeldeinformationen ein. Fertig.

Weitere Informationen finden Sie im GDB-Wiki

user1008139
quelle
2

Ich habe GDB aus der Quelle in Maverics kompiliert.

Ich habe das Makefile (nach ./configure) geändert, um einige Fehler zu unterdrücken, die Warnungen hätten sein sollen ... (-Wno-string-plus-int hinzugefügt)

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

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

Ich weiß nicht, ob beides notwendig ist.

Aber

Wie sich herausstellt, unterstützt die Standardversion das Debuggen aus .app-Dateien nicht (wie für Lazarus-Apps über die Carbon-Oberfläche erforderlich).

Wenn Sie es selbst tun möchten, folgen Sie diesem Link: https://sourceware.org/gdb/wiki/BuildingOnDarwin

Ben
quelle
Das wird wahrscheinlich nicht funktionieren. Ich habe es in der Vergangenheit versucht und die produzierte GDB konnte keine Apps debuggen.
JWW
Nachdem ich CFLAGS = "- I / usr / local / include" gesetzt hatte, konnte ich auch auf Mavericks aus dem Quellcode kompilieren, sodass libintl.h aufgenommen wurde. Vergessen Sie nicht, den Code zu signieren, sonst funktioniert gdb nicht. Weitere Informationen hierzu finden Sie unter ntraft.com/installing-gdb-on-os-x-mavericks . Das Endergebnis all dessen war das erfolgreiche Debuggen in NetBeans (mein Hauptgrund für das Erhalten von GDB).
Pete855217
1

In meinem Fall habe ich es unter OS X mit den folgenden Schritten zum Laufen gebracht:

  1. Richten Sie GDB Homebrew genau wie hier beschrieben ein: http://wiki.lazarus.freepascal.org/GDB_on_OS_X_Mavericks_and_Xcode_5

  2. Setzen Sie dann das Debuggen auf Dwarf2 : Projekt -> Projektoptionen. Geben Sie hier die Bildbeschreibung ein

Wenn Run / Build - aufhängt , dann Neustart Computer (taskgated oder einen anderen Prozess Zertifikat höchstwahrscheinlich nicht authentifiziert), Debug - Einstellungen zurück zu „automatischen (-g)“ Kompilierung & Run (Authentifizierungsdialog erscheint und melden Sie sich an), dann Einstellungen Debuggen ändern "Dwarf2" und es sollte wieder kompiliert werden

Versuchen Sie, GDB immer zu stoppen, wenn es nach einem Ausführungsvorgang abstürzt, um diesen Authentifizierungsfehler zu verhindern.

Evalds Urtans
quelle
0

Sie können www.macports.org installieren und GDB installieren. Sie müssen jedoch auf das MacPorts- Installationsprogramm für Mavericks warten , da es zum Zeitpunkt des Schreibens noch nicht veröffentlicht ist.

antonae
quelle
0

Als ich nach MacPorts sah, war es für Mavericks noch nicht verfügbar, aber jetzt ist es es!

Fink ist es immer noch nicht.

Die Standard-GDB unterstützt jedoch immer noch nicht das Debuggen von .app-Dateien.

Ben
quelle
-1

Führen Sie dies aus, um Befehlszeilentools zu installieren:

xcode-select --install
user2922471
quelle
4
CLT für OS X 10.9 Mavericks hat keine GDB, das ist das Problem, das das OP zu lösen versucht.
Parker
-1

Befehlszeilen-Utils sind im neuen Xcode nicht enthalten, können jedoch gemäß diesen Anweisungen abgerufen werden. (Der obige Xcode-Auswahlkommentar hat bei mir nicht funktioniert.)

Öffne Xcode

Wählen Sie im Anwendungsmenüpunkt "Xcode" Open Developer ToolMore Developer Tools ...

Dies führt Sie zu einer Site mit einer Reihe von Software. Laden Sie "Command Line Tools (OS X Mavericks) für Xcode - Ende Oktober 2013" herunter und installieren Sie sie.

(Dank an Jore https://discussions.apple.com/message/23513040#23513040 )

George
quelle
7
CLT hat keine GDB für 10.9
Parker
-4

Installieren Sie Mac OS X 10.8 (Mountain Lion) mit Xcode 4.6 in einer virtuellen Maschine und machen Sie Spaß)))

Ich verwende VMware Fusion, aber Sie können die kostenlose VirtualBox ausprobieren . Sie können alte Versionen von MacOS aus dem AppStore und alte Versionen von Xcode von der Apple Developer Site herunterladen.

Alexey Lobanov
quelle