On 9 August 2011 13:57, Mike Hommey wrote: > On Mon, Aug 08, 2011 at 05:25:23PM +0100, Jonathan Wakely wrote: >> On 8 August 2011 13:20, Mike Hommey wrote: >> > >> > I unfortunately hit several problems with gcc 4.7 (latest snapshot). >> > One is bug 50022 that I filed today. >> > >> > Another is the following error in stlport headers: >> > error: invalid use of incomplete type 'std::string {aka struct >> > std::basic_string<char, std::char_traits<char>, std::allocator<char> >}' >> > >> > I also tried GNU libstdc++ instead of stlport but I hit some other >> > errors that boil down to the following: >> > error: 'std::wstring' has not been declared >> >> They both look as though they could be caused by something as simple >> as failing to include <string> rather than a problem in GCC. Could >> you send me more context for the errors (offlist if you prefer)? I'll >> see if it's something we've changed in libstdc++, though given that >> STlport fails too it seems unlikely. > > I identified the libstdc++ failure as a problem when building gcc: > > configure:16321: /tmp/build-ndk/gcc-4.7.0/./gcc/xgcc -shared-libgcc > -B/tmp/build-ndk/gcc-4.7.0/./gcc -nostdinc++ > -L/tmp/build-ndk/gcc-4.7.0/arm-linux-androideabi/libstdc++-v3/src > -L/tmp/build-ndk/gcc-4.7.0/arm-linux-androideabi/libstdc++-v3/src/.libs > -B/tmp/android-ndk-r6/toolchains/arm-linux-androideabi-4.7.0/prebuilt/linux-x86/arm-linux-androideabi/bin/ > > -B/tmp/android-ndk-r6/toolchains/arm-linux-androideabi-4.7.0/prebuilt/linux-x86/arm-linux-androideabi/lib/ > -isystem > /tmp/android-ndk-r6/toolchains/arm-linux-androideabi-4.7.0/prebuilt/linux-x86/arm-linux-androideabi/include > -isystem > /tmp/android-ndk-r6/toolchains/arm-linux-androideabi-4.7.0/prebuilt/linux-x86/arm-linux-androideabi/sys-include > -c -frtti -fexceptions -O2 -Os -g -DTARGET_POSIX_IO -fno-short-enums > conftest.cpp >&5 > conftest.cpp:35:18: error: 'INT_MIN' was not declared in this scope > conftest.cpp:36:18: error: 'INT_MAX' was not declared in this scope > (snip) > configure:16345: checking for enabled wchar_t specializations > configure:16347: result: no > > Thus _GLIBCXX_USE_WCHAR_T is not defined, and as such, the typedef > for wstring isn't either.
Ah ok - that happens when the C library doesn't provide all the required wchar_t functions, fwprintf, mbrtowc etc.