gcc ver ist 5.4.0Für gcc in der Option -fsanitize, wie 'address' und 'leak' zusammen zu verwenden?
Ich mag es verwenden möchten: -fsanitize = Wohnung, Leck
OK?
gcc ver ist 5.4.0Für gcc in der Option -fsanitize, wie 'address' und 'leak' zusammen zu verwenden?
Ich mag es verwenden möchten: -fsanitize = Wohnung, Leck
OK?
Geben Sie einfach -fsanitize=address
und -fsanitize=leak
(als separate Programmargumente) an gcc
. Lesen Sie das Kapitel Invoking GCC und den Abschnitt Instrumentation Options.
Verwenden Sie auch das Programm valgrind.
Vergessen Sie nicht alle Ihren Code mit -Wall -Wextra -g
(und vielleicht sogar -g3
) zu kompilieren.
gcc's doc für ältere Releases gibt eindeutig an, dass -fsanitize = leak nutzlos ist, wenn du -fsanitize = Adresse hast. –
@MarcGlisse Können Sie weitere Details angeben? Ich denke ASan und LSan waren nicht in älteren GCC-Releases integriert. – yugr
Eine weitere Option ist die Übergabe von '-fsanitize = Adresse, leak'. – yugr
Lecksuche soll in die Adresse Sanitizer enthalten sein. –
@MarcGlisse Eigentlich ist dies bei älteren Releases (ca. 4.8) nicht der Fall, bei denen LSan und ASan noch nicht integriert waren. Sehen Sie [diesen Kommentar] (https://github.com/google/sanitizers/issues/699#issuecomment-290479274) zum Beispiel. – yugr