我按照以下方式编译我的代码以启用Asan:g++ -O0 -g -fsanitize=address -fno-omit-frame-pointer 但它从不生成核心转储,以便我可以随后检查错误的详细信息。我该如何生成它?
您需要设置环境变量以请求核心转储export ASAN_OPTIONS=abort_on_error=1 由于历史原因,ASan只是以非零错误代码退出,但这实际上应该是默认行为。 在64位系统中,您可能需要添加export ASAN_OPTIONS=abort_on_error=1:disable_coredump=0:unmap_shadow_on_exit=1 为了防止coredump过大,默认情况下禁用了它们。有关所有标志的完整列表,请参见Asan wiki。
ERROR: expected '='
- ar2015