Nach dem Upgrade auf Xcode 10.0 führt der Debugger keine Basisfunktionen aus. Es ist möglich, dass die Debugger-Probleme nicht mit dem Upgrade auf 10.0 zusammenhängen, aber ich vermute, dass dies der Auslöser ist.
Printing description of x x = <could not resolve type>
Gefolgt von:
note: Swift compiler options for ProjectX conflict with options found in other modules; Switching to a new expression evaluator for ProjectX, old $R variables are lost.
wenn Sie für eine bestimmte Variable "view memory of x" auswählen, wird die "memory view" angezeigt, die Adresse lautet jedoch "0x0" und der Inhalt ist absolut null.
Wenn Sie die (lldb) -Schnittstelle direkt verwenden, wenn ich versuche, eine Variable zu drucken, dh po x
, um die Variable "x" zu drucken, wird mir zuerst die obige Meldung über das Wechseln zu einem neuen Ausdrucksauswerter gegeben, jedoch bei der zweiten Ausführung desselben Druckbefehls po x
, ein anderer Fehler wird als angezeigt
error: Swift expressions require OS X 10.10 / iOS 8 SDKs or later.
Ja, ich bin auf OS X 10.13 und mein iOS-SDK ist 12.0 und ich habe verschiedene Geräte simuliert: iPad 6, Pro 2, Air 2, iPhone X, der Debugger hat auf allen Geräten die gleichen Symptome.
Ich habe meine Cocoapod-Version auf 1.6.0.beta.2 aktualisiert und mein Debugger funktioniert jetzt. Scheint, als ob CommonCrypto das Problem verursacht
Fest
Im Fall meines Projekts wurde dies durch die Aufnahme eines CommonCrypto wrappers verursacht, der als Framework in einem meiner Module enthalten war. Soweit ich weiß, hat dies zu Konflikten mit den Kryptomodulen geführt, die jetzt in iOS enthalten sind
Dies ist ein langlebiges Projekt, und dieses CommonCrypto-Framework wird von den Einrichtungen, die in neueren Apple-Frameworks bereitgestellt werden, für uns veraltet. Nachdem das CommonCrypto-Framework entfernt wurde, funktionierte das Debugging wieder.
Ich habe Karthago benutzt und hatte die gleichen Probleme. Das Aktualisieren meiner Abhängigkeiten mit diesem Befehl hat das Problem für mich gelöst:
carthage update --platform iOS --no-use-binaries
In meinem Fall habe ich Fabric, Crashlytics, Firebase/Core von Cocoapod entfernt und alles ist gut.
Xcode 10.0
pod 'Stoff', '~> 1.9.0'
pod 'Crashlytics', '~> 3.12.0'
pod 'Firebase/Core'