Warum ist "Enable Address Sanitizer" in Xcode 7 deaktiviert?

9

Ich las über die Runtime Sanitization in dem Apple-docs Im neuen Xcode 7 habe ich danach gesucht und festgestellt, dass es deaktiviert ist. Ich verwende Xcode 7 GM Seed.

Wenn ich in die Run-Aktion des Schemas gehe & gt; Registerkarte Diagnose, die Option Enable Address Sanitizer ist deaktiviert:

Es gibt eine Erklärung darüber, wie andere Optionen disbled sind, aber nicht erwähnt, warum die Option sanitization deaktiviert werden würde:

  

Einige Diagnosewerkzeuge können in Kombination mit anderen verwendet werden. Die im Bereich Diagnose verfügbaren Optionen sind aktiviert und deaktiviert, da verschiedene Optionen zur Auswahl von Optionskombinationen ausgewählt wurden. Aktivieren Sie beispielsweise den Adressdesinfizierer, und andere nicht kompatible Tools sind deaktiviert und können nicht ausgewählt werden

Mit Blick auf die Clang 3.8 Dokumentation für AddressSanitizer , sieht es aus wie es auch aktiviert werden kann, durch eine Zugabe Markierung: -fsanitize=address . Aber wo dieser Flag sollte in den Build-Einstellungen verwendet wird, ist ein Geheimnis, und fraglich, da es existiert auch als Kontrollkästchen Option in der Regelung.

Auch fanden diese SO beantworten , aber es ist ziemlich komplex und wahrscheinlich veraltet, da es wieder im Jahr 2013 war.

    
Sheamus 17.09.2015, 14:10
quelle

2 Antworten

9

Sie können Guard Malloc und Address Sanitizer derzeit nicht zusammen verwenden. Wenn Sie das Kontrollkästchen "Guard Guard Malloc" aktivieren, wird das Kontrollkästchen "Enable Address Sanitizer" deaktiviert. Deaktivieren Sie das Kontrollkästchen Guard Guard Malloc aktivieren, wenn Sie den Address Sanitizer verwenden möchten.

    
Mark Szymczyk 17.09.2015, 18:21
quelle
0

Sie müssen auch sicherstellen, dass Sie einen Mac / iOS / TV-Simulator ausgewählt haben, nicht ein Gerät. Uhrsimulator wird nicht unterstützt. (Ab Xcode 9)

    
Bob Peterson 15.03.2018 19:05
quelle

Tags und Links