You may need to switch from stlport to libc++ or some other option (there is a choice of c++ std libraries in the NDK).
On Thu, Sep 4, 2014 at 5:25 AM, ji wang <[email protected]> wrote: > Hi,Evgeniy > I am cross-compiling LLVM-symbolizer for Android4.4, Now I got a compile > error like below,Any ideas to solve this? Any patches for this? > external/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp:336: error: undefined > reference to '__cxa_demangle' > collect2: error: ld returned 1 exit status > > 在 2014年9月2日星期二UTC+8下午5时09分15秒,Evgeniy Stepanov写道: >> >> We don't have any short-term plans for that, though it would be a nice >> to have feature. >> >> There is a code dump here with some instructions that might be useful >> if you want to try: >> >> https://code.google.com/p/address-sanitizer/source/browse/#svn%2Ftrunk%2Finternal_symbolizer >> >> On Tue, Sep 2, 2014 at 12:56 PM, ji wang <[email protected]> wrote: >> > Thanks Evgeniy, I've noticed this today. And I am trying to write an >> > Android.mk script to cross-compile llvm-symbolizer code now. >> > And this solution is the ExternalSymbolizer, have any plan about the >> > InternalSymbolizer support? >> > >> > >> > >> > 在 2014年9月2日星期二UTC+8下午4时31分49秒,Evgeniy Stepanov写道: >> >> >> >> If you build llvm-symbolizer binary (it's in the LLVM source tree, >> >> cross-compile it to Android) and push it to /system/bin, then >> >> symbolization will just work. >> >> >> >> >> >> On Tue, Sep 2, 2014 at 7:05 AM, ji wang <[email protected]> wrote: >> >> > I think its very useful to add the function name to the asan output >> >> > recently, which needs in-process symbolization in Asan runtime. >> >> > I've checked the asan runtime source code on android platform, found >> >> > out >> >> > "__sanitizer_symbolize_data" and "__sanitizer_symbolize_code" >> >> > unimplemented. >> >> > What should I do to implement those function and make the >> >> > symbolization >> >> > works? Or is there any other way to symbolizing ASan output on >> >> > Android? >> >> > >> >> > char *SendCommand(bool is_data, const char *module_name, uptr >> >> > module_offset) { >> >> > SanitizerSymbolizeFn symbolize_fn = is_data ? >> >> > __sanitizer_symbolize_data >> >> > : >> >> > __sanitizer_symbolize_code; >> >> > if (symbolize_fn(module_name, module_offset, buffer_, >> >> > kBufferSize)) >> >> > return buffer_; >> >> > return 0; >> >> > } >> >> > >> >> > -- >> >> > 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. >> > >> > -- >> > 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. > > -- > 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. -- 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.
