<p>Wow, you fixed it at such a low level. Excellent. I just looked into it a little bit and thought that the problem was that moc doesnt handle macro expansion so we were a bit buggered, but wow, your fix looks general enough!</p>

<p>Ill give things a good test over the weekend. When do you hope to get the release ready by?</p>
<p>Btw, I've been working with the mer team on upgrading their compilers to linaro 4.6.2 and carsten munk is testing it, so I think this is great as it will give me some more confidence in their stability if the testing gives good results.</p>

<div class="gmail_quote">On Dec 9, 2011 9:31 PM, "BogDan" <<a href="mailto:bog_dan_ro@yahoo.com">bog_dan_ro@yahoo.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><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 : <a href="http://commits.kde.org/android-qt/b28ef4d8223c46cd3cb6e0f39ccd5adc958eece7" target="_blank">http://commits.kde.org/android-qt/b28ef4d8223c46cd3cb6e0f39ccd5adc958eece7</a></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 <<a href="mailto:mingw.android@gmail.com" target="_blank">mingw.android@gmail.com</a>><br>
 <b><span style="font-weight:bold">To:</span></b> <a href="mailto:necessitas-devel@kde.org" target="_blank">necessitas-devel@kde.org</a> <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 href="mailto:Necessitas-devel@kde.org" target="_blank">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></div></blockquote></div>