Need help on croos compiling qt5

I just follow this link to compile Qt5.4.1,

https://www.kancloud.cn/lichee/lpi0/330355

however it failed during make and below is the error:
arm-linux-gnueabihf-g++ -c -pipe -O2 -std=c++0x -fno-exceptions -Wall -W -D_REENTRANT -fPIE -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_MOC -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_COMPRESS -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_BOOTSTRAP_LIB -DQT_BOOTSTRAPPED -DQT_LITE_UNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CODECS -DQT_NO_DATASTREAM -DQT_NO_LIBRARY -DQT_NO_QOBJECT -DQT_NO_SYSTEMLOCALE -DQT_NO_THREAD -DQT_NO_UNICODETABLES -DQT_NO_USING_NAMESPACE -DQT_NO_DEPRECATED -DQT_NO_TRANSLATION -DQT_QMAKE_LOCATION="/home/river/toolchain/qt-everywhere-opensource-src-5.4.1/qtbase/bin/qmake" -I. -I. -I…/…/…/include -I…/…/…/include/QtCore -I…/…/…/include/QtXml -I…/…/…/include/QtCore/5.4.1 -I…/…/…/include/QtCore/5.4.1/QtCore -I…/…/…/include/QtXml/5.4.1 -I…/…/…/include/QtXml/5.4.1/QtXml -I…/…/…/mkspecs/linux-g++ -o .obj/main.o main.cpp
g++ -Wl,–gc-sections -Wl,-O1 -fuse-ld=gold -o …/…/…/bin/moc .obj/moc.o .obj/preprocessor.o .obj/generator.o .obj/parser.o .obj/token.o .obj/main.o -L/home/river/toolchain/qt-everywhere-opensource-src-5.4.1/qtbase/lib -lQt5Bootstrap -lpthread
/usr/bin/ld.gold: fatal error: .obj/moc.o: unsupported ELF machine number 40
collect2: error: ld returned 1 exit status
make[3]: *** […/…/…/bin/moc] Error 1
make[3]: Leaving directory /home/river/toolchain/qt-everywhere-opensource-src-5.4.1/qtbase/src/tools/moc' make[2]: *** [sub-moc-make_first] Error 2 make[2]: Leaving directory/home/river/toolchain/qt-everywhere-opensource-src-5.4.1/qtbase/src’
make[1]: *** [sub-src-make_first] Error 2
make[1]: Leaving directory `/home/river/toolchain/qt-everywhere-opensource-src-5.4.1/qtbase’
make: *** [module-qtbase-make_first] Error 2

I read the make log and it uses host g++, so I tried changing host gcc to gcc6.3.1 or gcc4.6, neither helps.

If using arm-linux-gnueabihf-gcc-4.9.2, make & make install is OK, however I did not use it because the kernel is using gcc6.3.1. (I don’t know whether Qt compiled by gcc4.9 works on kernel compiled by gcc6.3)

Has anyone succeeded making Qt run licheepi Zero?

Anyway, Qt5.4.1 compiled by gcc4.9.2 works on licheepi Zero.
I don’t know whether it will be OK for all cases.