Skip to content

编译ASAN版本报错 #1186

@acelyc111

Description

@acelyc111

Describe the bug (描述bug)
尝试编译ASAN版本的brpc库,将CMakeLists.txt修改:

< set(CMAKE_CXX_FLAGS "${CMAKE_CPP_FLAGS} -O2 -pipe -Wall -W -fPIC -fstrict-aliasing -Wno-invalid-offsetof -Wno-unused-parameter -fno-omit-frame-pointer")
---
> set(CMAKE_CXX_FLAGS "${CMAKE_CPP_FLAGS} -O1 -fsanitize=address -pipe -Wall -W -fPIC -fstrict-aliasing -Wno-invalid-offsetof -Wno-unused-parameter -fno-omit-frame-pointer")

链接报错:

[ 97%] Linking CXX executable ../../output/bin/rpc_press
`.note.GNU-stack' referenced in section `.init_array.00099' of CMakeFiles/OBJ_LIB.dir/bthread/context.cpp.o: defined in discarded section `.note.GNU-stack' of CMakeFiles/OBJ_LIB.dir/bthread/context.cpp.o
collect2: error: ld returned 1 exit status
make[2]: *** [output/lib/libbrpc.so] Error 1
make[1]: *** [src/CMakeFiles/brpc-shared.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
../../output/lib/libbrpc.a(file_path.cc.o): In function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const':
/usr/include/c++/7.3.0/bits/basic_string.h:912: undefined reference to `__asan_report_load8'

To Reproduce (复现方法)

Expected behavior (期望行为)
编译链接通过

Versions (各种版本)
OS:
Compiler:
brpc:
protobuf:

Additional context/screenshots (更多上下文/截图)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions