¿Cómo usar el desinfectante de hilos de gcc v4.8.1?

gcc v4.8.x agrega opciones para depurar tu programa:

-fsanitize = hilo

Habilita ThreadSanitizer, un detector rápido de carreras de datos. Las instrucciones de acceso a la memoria se instrumentarán para detectar errores en la carrera de datos. Verhttp://code.google.com/p/data-race-test/wiki/ThreadSanitizer para más detalles.

Mi versión gcc en Fedora 19:

gcc version 4.8.1 20130603 (Red Hat 4.8.1-1) (GCC)

Enlace mi programa con el siguiente comando (salida de CMake):

Linking C executable bin/ftu
/usr/bin/cmake -E cmake_link_script CMakeFiles/ftu.dir/link.txt --verbose=1
/usr/bin/cc  -g -g -O0 -Wall -D_REENTRANT  -rdynamic -fsanitize=thread -fPIE -pie    CMakeFiles/ftu.dir/src/main/main.c.o  -o bin/ftu  -L/home/hl/ftu/arm/src/libapp/pc -rdynamic ../libapp/pc/libbase.a ../libapp/pc/libstbl.a ../libapp/pc/libstbl_utest.a ../libapp/pc/libbase_utest.a ../libapp/pc/libmem_utest.a ../libapp/pc/libmemspy_utest.a ../libapp/pc/libos_utest.a ../libapp/pc/libmain_utest.a ../libapp/pc/liblog_utest.a ../libapp/pc/libini_utest.a ../libapp/pc/libdsp_utest.a ../libapp/pc/libmstation_utest.a ../libapp/pc/libflist_utest.a ../libapp/pc/libdc_utest.a ../libapp/pc/libflist.a ../libapp/pc/libdsp.a ../libapp/pc/liblog.a ../libapp/pc/libini.a ../libapp/pc/libmstation.a ../libapp/pc/libdc.a ../libapp/pc/libmemspy.a ../libapp/pc/libmem.a ../libapp/pc/libos.a ../libapp/pc/libbase.a -lrt -lpopt -lpthread -Wl,-rpath,/home/hl/ftu/arm/src/libapp/pc

/usr/bin/ld: cannot find -ltsan

collect2: error: ld returned 1 exit status

Gcc dice "no se puede encontrar -ltsan". ¿Dónde está libtsan existe?

Encontré algo enhttp://gcc.gnu.org/gcc-4.8/changes.html:

ThreadSanitizer se ha agregado y se puede habilitar a través de -fsanitize = hilo. Se instrumentarán instrucciones para detectar carreras de datos. ThreadSanitizer está disponible en x86-64 GNU / Linux.

-fsanitize = hilo solo es compatible con CPU de 64 bits. Mi linuxuname -a la salida es:

Linux hl.zy 3.9.8-300.fc19.i686 # 1 SMP Jue 27 de junio 19:40:39 UTC 2013 i686 i686 i386 GNU / Linux

Mi cpu es de 32 bits, no es compatible! Estoy en lo cierto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta