Ich habe gerade auf xCode 4.3.2 aktualisiert. Beim Erstellen des Debuggers möchte ich, dass ich auf Folgendes aktualisiere: Buildeinstellungen
Ziel 'myApp' - Aktualisieren Sie den ARMV6-Assembler-Codegen vom THUMB- in den ARM-Modus ARMV6-Assemblercodegen wird auf THUMB gesetzt. Dadurch wird die codgen-Einstellung für ARMV6 auf den empfohlenen Wert aktualisiert: ARM.
AND
Schema 'myApp' - Upgrade Debugger von GDB zu LLDB Der Debugger wird für die Aktion Ausführen auf GDB gesetzt. Dadurch wird die Debugger-Einstellung auf den empfohlenen Wert aktualisiert: LLDB.
Ist es in Ordnung für mich, das zu tun? Meine App ist auf iOS 3.1 und höher ausgerichtet.
LLDB hat seine Vorteile, aber IMHO ist nicht so stabil wie GDB. In den meisten Fällen ist LLDB gut und wird ordnungsgemäß funktionieren. Wenn beim Debuggen etwas Seltsames passiert, wechseln Sie innerhalb der Scheme-Einstellungen einfach wieder zu GDB. Es ist also in Ordnung, dieses Upgrade zu akzeptieren.
Das Erstellen von ARM anstelle von THUMB-Code auf ARMV6 ist im Grunde eine Umgehung für einen fehlerhaften Fehler in LLVM (der Ziel-C-Compiler, den Apple jetzt bevorzugt). Wenn Sie diese Änderung nicht akzeptieren, sind die Chancen ziemlich hoch, dass der ARMV6-Zielcode fälschlicherweise optimiert wird, was Probleme in Ihre App bringt, die Sie nicht erwartet hätten. Um es klar zu formulieren, ist die ARMV6-Thumb-Optimierung in LLVM 3.1 fehlerhaft (wie mit Xcode 4.3.2 und niedriger gebündelt). Die Annahme dieses Upgrades ist daher obligatorisch.