On Saturday, March 15, 2014 3:36:25 AM UTC-4, Yuri Gribov wrote:
>
> > Does
> > anyone have an idea why PC is 0x00000000?
>
> I think that Asan initialization code (__asan_init) didn't run so
> glibc interceptors were not set up.
>
> > The only un-ordinary
> > part was I had to add some of the sanitizer libraries to LIBS due to
> > undefined symbols like __asan_report8 when building the Python archive
> > libpython3.4m.a:
>
> I don't think this is the right way to go (actually, I believe this is
> the cause of error). You need to make sure that python executable is
> linked with -fsanitize-address - this flag will pass all the necessary
> libs and flags to linker (it's non-trivial!).
>
You were right Yuri. I found a linker invocation that did not use any flags.
For completeness, here it is (the mods would be applied in the top level
Makefile after ./configure):
# Build the interpreter
$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
$(LINKCC) -g3 -fsanitize=address $(PY_LDFLAGS) $(LINKFORSHARED) -o $@
Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
Thanks for the help.
Jeff
--
You received this message because you are subscribed to the Google Groups
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.