[Bug other/55374] [asan] Can't link static libasan with static libstdc++

2012-11-17 Thread hjl.tools at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55374



--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2012-11-18 01:18:07 
UTC ---

-Bstatic -lasan -Bdynamic must be placed before -Bstatic -lstdc++ -Bdynamic.


[Bug other/55374] [asan] Can't link static libasan with static libstdc++

2012-11-17 Thread hjl.tools at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55374



--- Comment #2 from H.J. Lu hjl.tools at gmail dot com 2012-11-18 01:29:57 
UTC ---

Even without -static-libasan, shouldn't -lasan be placed before

-lstdc++?



[hjl@gnu-tools-1 prev-gcc]$ ./g++ -B./  -faddress-sanitizer x.o

-B../prev-x86_64-unknown-linux-gnu/libsanitizer/asan/.libs/

-B../prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/ -v

Reading specs from ./specs

COLLECT_GCC=./g++

COLLECT_LTO_WRAPPER=./lto-wrapper

Target: x86_64-unknown-linux-gnu

Configured with: /export/gnu/import/git/sources/gcc/configure

--enable-clocale=gnu --with-system-zlib --with-demangler-in-ld

--enable-languages=c,c++ --prefix=/usr/gcc-4.8.0 --with-local-prefix=/usr/local

--enable-gnu-indirect-function --disable-werror

--with-build-config=bootstrap-asan --with-fpmath=sse

Thread model: posix

gcc version 4.8.0 20121117 (experimental) (GCC) 

COMPILER_PATH=./:../prev-x86_64-unknown-linux-gnu/libsanitizer/asan/.libs/:../prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/

LIBRARY_PATH=./:../prev-x86_64-unknown-linux-gnu/libsanitizer/asan/.libs/:../prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/:/lib/../lib64/:/usr/lib/../lib64/:/lib/:/usr/lib/

COLLECT_GCC_OPTIONS='-B' './' '-faddress-sanitizer' '-B'

'../prev-x86_64-unknown-linux-gnu/libsanitizer/asan/.libs/' '-B'

'../prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/' '-v'

'-shared-libgcc' '-mtune=generic' '-march=x86-64'

 ./collect2 --eh-frame-hdr -m elf_x86_64 -dynamic-linker

/lib64/ld-linux-x86-64.so.2 /lib/../lib64/crt1.o /lib/../lib64/crti.o

./crtbegin.o -L. -L../prev-x86_64-unknown-linux-gnu/libsanitizer/asan/.libs

-L../prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs -L/lib/../lib64

-L/usr/lib/../lib64 x.o -lstdc++ -lm -lasan -lgcc_s -lgcc -lc -lgcc_s -lgcc

./crtend.o /lib/../lib64/crtn.o

[hjl@gnu-tools-1 prev-gcc]$