<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>Hey,</span></div><div><span><br></span></div><div><span>Fixed : http://commits.kde.org/android-qt/b28ef4d8223c46cd3cb6e0f39ccd5adc958eece7</span></div>
<div><br>
  <span></span></div>


<div><span>Cheers,</span></div>
<div><span>BogDan.</span></div><div><br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;">  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <font face="Arial" size="2"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> mingw android <mingw.android@gmail.com><br> <b><span style="font-weight: bold;">To:</span></b> necessitas-devel@kde.org <br> <b><span style="font-weight: bold;">Sent:</span></b> Tuesday, December 6, 2011 3:01 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> Rebuilding Android Qt with Linaro GCC 4.6.2.<br> </font> <br>
Hi guys,<br><br>I sent this email to BogDan, but really, this list is a more<br>appropriate place for it (and Gmail and Yahoo don't like talking to<br>each other sometimes, so I don't think he's getting my emails<br>delivered promptly).<br><br>Sorry this is a bit long-winded! I managed to track down (on Linux)why<br>Qt Android doesn't build correctly with Linaro GCC 4.6.2 finally (btw<br>I released to the ndk mailing list the newest versions with<br>important neon fixes)... It's important that I get the 4.6.2 build<br>working and tested as neon will probably never work properly in 4.4.3,<br>plus 4.6.2 brings all sorts of other niceness (Cloog/Graphite + auto<br>parallelism).<br><br>On Ubuntu Linux GCC 4.6.1 Host Qt build works, here's a snippet of the commands:<br>pushd /usr/nec/shared-build/src/corelib<br>rm .moc/release-shared/moc_qabstractanimation.cpp<br>make<br><br>...executes...<br><br>/usr/nec/shared-build/bin/moc -DQT_SHARED
 -DQT_BUILD_CORE_LIB<br>-DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS<br>-DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS<br>-DQT_USE_FAST_CONCATENATION -DELF_INTERPRETER=\"/lib/ld-linux.so.2\"<br>-DQLIBRARYINFO_EPOCROOT -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG<br>-DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT<br>-DQT_HAVE_SSE2 -DQT_HAVE_SSE3 -DQT_HAVE_SSSE3 -DQT_HAVE_SSE4_1<br>-DQT_HAVE_SSE4_2 -DQT_HAVE_AVX -D_LARGEFILE64_SOURCE<br>-D_LARGEFILE_SOURCE -I/usr/nec/qt-src/mkspecs/linux-g++<br>-I/usr/nec/qt-src/src/corelib -I../../include -I../../include/QtCore<br>-I.rcc/release-shared -Iglobal -I/usr/nec/qt-src/tools/shared<br>-I/usr/nec/qt-src/src/3rdparty/harfbuzz/src<br>-I/usr/nec/qt-src/src/3rdparty/md5 -I/usr/nec/qt-src/src/3rdparty/md4<br>-I.moc/release-shared -I.<br>/usr/nec/qt-src/src/corelib/animation/qabstractanimation.h -o<br>.moc/release-shared/moc_qabstractanimation.cpp<br><br><br><br>Android Linaro 4.6.2 Qt
 build fails:<br>pushd /usr/nec/unstable/Android/Qt/480/build-armeabi/src/corelib<br>rm .moc/release-shared/moc_qabstractanimation.cpp<br>make<br><br>...executes...<br><br>/usr/nec/unstable/Android/Qt/480/build-armeabi/bin/moc -DQT_SHARED<br>-DQT_NO_CORESERVICES -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE<br>-DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT<br>-DQT_USE_QSTRINGBUILDER -DQLIBRARYINFO_EPOCROOT<br>-DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/mkspecs/android-g++<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/src/corelib -I../../include<br>-I../../include/QtCore -I.rcc/release-shared
 -Iglobal<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/tools/shared<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/src/3rdparty/harfbuzz/src<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/src/3rdparty/md5<br>-I/usr/nec/unstable/Android/Qt/480/qt-src/src/3rdparty/md4<br>-I.moc/release-shared<br>-I/usr/nec/unstable/Android/Qt/480/build-armeabi/src/corelib/.rcc/release-shared<br>-I/usr/nec/android-ndk-r6b/platforms/android-5/arch-arm/usr/include<br>-I/usr/nec/android-ndk-r6b/sources/cxx-stl-4.6.2/gnu-libstdc++/include<br>-I/usr/nec/android-ndk-r6b/sources/cxx-stl-4.6.2/gnu-libstdc++/libs/armeabi/include<br>-I. /usr/nec/unstable/Android/Qt/480/qt-src/src/corelib/animation/qabstractanimation.h<br>-o .moc/release-shared/moc_qabstractanimation.cpp<br>...and fails...<br>usr/nec/android-ndk-r6b/sources/cxx-stl-4.6.2/gnu-libstdc++/include/bits/stl_relops.:68:<br>Parse error at "std"<br>make: *** [.moc/release-shared/moc_qabstractanimation.cpp] Error 1<br><br>...I
 examined the moc command lines in detail and the difference is<br>that we explicitly add the gnulibstdc++ includes path(s):<br>"-I/usr/nec/android-ndk-r6b/sources/cxx-stl-4.6.2/gnu-libstdc++/include<br>-I/usr/nec/android-ndk-r6b/sources/cxx-stl-4.6.2/gnu-libstdc++/libs/armeabi/include"<br><br>So I tested adding the equivalent (-I/usr/include/c++/4.6.1) to Ubuntu:<br>/usr/nec/shared-build/bin/moc -I/usr/include/c++/4.6.1 ...etc...<br>etc... /usr/nec/qt-src/src/corelib/animation/qabstractanimation.h -o<br>.moc/release-shared/moc_qabstractanimation.cpp<br>and it fails in much the same way:<br>usr/include/c++/4.6/bits/stringfwd.:43: Parse error at "std"<br><br>Which is good as it identifies that this is the problem. Moc can't<br>handle very recent libstdc++ headers (because it doesn't do macro<br>expansion).<br><br>For us, the problem obviously because in qmake.conf we've got:<br>ANDROID_SOURCES_CXX_STL_INCDIR
 =<br>$$NDK_ROOT/sources/cxx-stl-$$ANDROID_CXXSTL_SUFFIX/gnu-libstdc++/include<br>$$ANDROID_SOURCES_CXX_STL_LIBDIR/include<br>QMAKE_INCDIR            = $$ANDROID_PLATFORM_PATH/include<br>$$ANDROID_SOURCES_CXX_STL_INCDIR<br><br>So I guess we need to not add this when mocc'ing, but I'm not sure how<br>best to achieve this.<br><br>I guess we could have QMAKE_INCDIR_MOC which doesn't get these things<br>added or something like that? If anyone's got any thoughts then please<br>shout.<br><br>Cheers,<br><br>Ray.<br>_______________________________________________<br>Necessitas-devel mailing list<br><a ymailto="mailto:Necessitas-devel@kde.org" href="mailto:Necessitas-devel@kde.org">Necessitas-devel@kde.org</a><br><a href="https://mail.kde.org/mailman/listinfo/necessitas-devel" target="_blank">https://mail.kde.org/mailman/listinfo/necessitas-devel</a><br><br><br> </div> </div> </blockquote></div>   </div></body></html>