g cc: ошибка: нераспознанный параметр командной строки '-fsanitize-покрытие = trace-p c -guard' - PullRequest
0 голосов
/ 22 января 2020

Во время сборки Firefox (более старые версии, включая 56.0, 57.0) я часто сталкивался со следующей ошибкой:

gcc: error: unrecognized command line option ‘-fsanitize-coverage=trace-pc-guard’; did you mean ‘-fsanitize-coverage=trace-pc’?

независимо от того, в сборке ASAN или в обычной отладочной сборке.

При обычной отладке я использовал следующие опции:

ac_add_options --disable-jemalloc
ac_add_options --enable-crashreporter
ac_add_options --disable-elf-hack
export MOZ_DEBUG_SYMBOLS=1
ac_add_options --enable-debug-symbols
ac_add_options --disable-install-strip
ac_add_options --disable-strip
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --disable-profiling
ac_add_options --enable-fuzzing

Я предполагаю, что это как-то связано с опцией - enable-fuzzing , но понятия не имею, почему и как исправить.

PS: у меня g ++, g cc версия 7.4.0.

1 Ответ

1 голос
/ 22 января 2020

G CC не поддерживает дезинфицирующее покрытие, но вместо этого вы можете использовать clang:

apt-get install clang
# or, to force a specific version of clang:
apt-get install clang-8
export CC=clang
export CXX=clang++
# or, force a specific version of clang:
export CC=clang-8
export CXX=clang++-8
...