Frage

habe ich ein Projekt für Mac OS X 10.5, dass ich auf 10,6 baute mit Xcode 3.2. Wenn ich 4.2 GCC für Debug-Build und prallte gegen einen Breakpoint, Xcode Debugger zeigt normalerweise lokale Variable Informationen. Wenn ich LLVM GCC 4.2 oder Clang LLVM wählen, wenn ich Haltepunkt erreicht, sind lokale Symbole nicht verfügbar, und GDB sagt Kein Symbol ‚Selbst‘ im aktuellen Kontext , wenn ich versuche, drucken Selbst oder andere lokale Symbole. In allen Fällen generieren Debug-Informationen Option eingestellt ist. Die Debug-Konfiguration auf $(NATIVE_ARCH) und 10.5 SDK gesetzt ist, Bauen aktiv Architektur nur Option ist gesetzt. Wenn GDB beginnt, kann ich sehe es als x86_64-apple-darwin konfiguriert wird. Ich muss etwas fehlt offensichtlich. Wie kann ich zeigen GDB lokale Symbole, wenn ein LLVM-Compiler?

War es hilfreich?

Lösung

Für diejenigen, die nicht vertraut sind, ein wenig mehr Details cdespinosa Antwort, die für mich gearbeitet, und das stimmte ich auf.

  1. Aus dem Xcode-Menü wählen Sie Projekt> Projekteinstellungen bearbeiten ...
  2. Wählen Sie die Registerkarte Erstellen
  3. Sie im Suchfeld Typ „Optimierungsstufe“, wählen Sie das Feld, und wählen Sie Keine.
  4. Weiter Suche nach "Debug Information Format", wählen Sie das Feld, und wählen Sie "Dwarf" oder "ZWERG mit DSYM".

wäre dies auf seinen Posten in den Kommentaren setzen, wenn ich die privs hatte. ;)

Diese Kosten uns einige ernste Zeit, und war offen Art von schlampig auf Apples Teil, aber im Allgemeinen kann ich mich nicht beschweren.

Andere Tipps

Stellen Sie sicher, Gebäude sind Sie mit Dwarf Symbole und keine Optimierung. llvm ist ein neues Back-End, und nicht alle seines optimierte codegen ist süchtig bis zu Debug-Symbol Generation vor.

Dies kann helfen. Versuchen Sie das Ausschalten „Link-Time Optimization“ in dem Build-Optionen des Projektes. Das ein Problem behoben ich mit fehlenden Debug-Symbole hatte.

In der Tat, dass ein paar seltsame Probleme behoben ich mit Clang hatte. Ich würde sagen, dass Funktion ist nur Kante zu Blutungen noch zu verwenden.

GDB von FSF nur Unterstützung für JIT-Code sehr vor kurzem .

Ich weiß nicht, ob Apple bereitgestellten GDB Unterstützung auf alle für sie hat (Treffen Sie vernünftigen Stack-Traces bekommen?). Ist dies der Fall, diese Unterstützung ist (scheinbar) nicht vollständig.

Ich habe dieses Problem und löste es, indem Sie ein Häkchen neben den Menüpunkt setzen: „Projekt> Set aktiven Build-Konfiguration> Debug“. Zuvor wurde die „Release“ Option ausgewählt. Die Einheimischen begann von da an im Debugger für mein Projekt zeigt sich.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top