2017-09-01 7 views
0

J'ai compilé mes codes avec -fsanitize = adresse sur centOS7.2.1511, quand j'ai mis à jour gcc en 7.1.0, il ne peut plus générer de fichier de vidage de base.Can quelqu'un m'aider? Merci.Comment générer core dump lors de l'utilisation Adresse Sanitizer et gcc7.1.0

option complie gcc: -lm -g3 -Wall -Wno-unknown-pragmas --std = C++ 11 -Werror -ggdb -fsanitize = adresse -fno-omit-frame-pointer -D_GLIBCXX_USE_CXX11_ABI = 0

option lien: -lxml2 -lpthread -lmysqlclient -L/usr/lib64/mysql/-llog4cxx -lprotobuf -llua -lluabind -lhiredis -lcrypto -lcurl -ljsoncpp -Wl, -E -fsanitize = adresse -ldl

d'abord j'utiliser gcc4.8.5, core dump est normalement générée avec l'option ASAN_OPTIONS définies comme ceci: exportation ASAN_OPTIONS = "disable_core = 0: unmap_shadow_on_exit = 1: abort_on_error = 1"

Puis je mets gcc à 7.1.0, alors le core dump ne peut plus générer, même si le paramètre ASAN_OPTIONS est réglé comme ci-dessus.

Répondre

0

Le problème est devrait être réglé solved.The nouvelle option de désinfectant pour les mains ASAN_OPTIONS est "disable_coredump", je l'ai mis comme ceci: ASAN_OPTIONS = "disable_coredump = 0: unmap_shadow_on_exit = 1: abort_on_error = 1"