[cfe-dev] libc++ std::cerr on GNU/Linux
bruce.r.stephens at gmail.com
Wed Feb 29 09:15:14 PST 2012
David Chisnall <theraven-Ae9UE+oIsuU at public.gmane.org> writes:
> Two replies so far, and everyone seems to be assuming you're talking
> about libcxxrt, not libc++. For future reference, calling libc++
> libcxx apparently confuses people...
I've changed the subject line. Probably my own fault; the directory I
checked out libc++ to is called libcxx.
> As to the bug, I've seen crashes like this before when doing the
> FreeBSD and Solaris ports. As I recall, that exception is thrown when
> the locale_t is NULL. In this case, I would expect you to be using
> the C locale.
I'm not. At least, LANG is set to en_GB.UTF-8. Setting it to C, en_GB,
unsetting it, doesn't seem to change the crash.
> I believe on glibc that this is generated by calling __cloc(), so this
> may be a good place to look.
OK. I'm still not seeing anything obvious: if I include <locale> then I
can create a locale (and the destructor seems to complete fine).
ldd shows I'm linking against libstdc++.so.6 and librt.so.1 as well as
libc++.so.1. Is that expected, or should I not be linking against
linux-vdso.so.1 => (0x00007fffe9976000)
libc++.so.1 => /usr/local/lib/libc++.so.1 (0x00007fced02e2000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fced0043000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fcecfe2c000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fcecfaa5000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fcecf7a1000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fcecf584000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fcecf37c000)
More information about the cfe-dev