Qt 5.5 - i.mx27 - building for cross compiles
-
Hi, I need good practice help for configuring and compiling Qt .
Context :
Host platform : linux x86 (ubuntu 15.10)
target platform : linux arm (i.mx27)
target SD copy : ~/Développement/Linux-Embedded/i.mx27_SD (bin+ *.so)
toolchain :/opt/OSELAS.Toolchain-1.99.3/arm-v4t-linux-gnueabi/...
Qt source : ~/Developpement/qt-everywhere-opensource-src-5.5.0/
personal adds : ../mkspec/linux-arm-v4t-gnueabi-g++/ (copy of "linux-arm-gnueabi-g++" with arm-v4t-gnueabi banaries references)I try set the suitable "configure" command line but it failed..
Configure
+ cd qtbase + /home/benoit/Developpement/qt-everywhere-opensource-src-5.5.0/qtbase/configure -top-level -opensource -confirm-license -release -v -xplatform linux-arm-v4t-gnueabi-g++ -sysroot /opt/OSELAS.Toolchain-1.99.3/arm-v4t-linux-gnueabi/gcc-4.1.2-glibc-2.5-binutils-2.17-kernel-2.6.18/sysroot-arm-v4t-linux-gnueabi/ -shared -linuxfb -device-option CROSS_COMPILE=/opt/OSELAS.Toolchain-1.99.3/arm-v4t-linux-gnueabi/gcc-4.1.2-glibc-2.5-binutils-2.17-kernel-2.6.18/bin/arm-v4t-linux-gnueabi- -prefix /usr/lib/arm-linux-gnu/qt5.5 -no-opengl -no-c++11 -no-dbus -no-feature-CURSOR -no-feature-CLIPBOARD -no-feature-WHEELEVENT -no-feature-CUPS -qt-zlib -system-libjpeg -system-libpng -nomake tools -nomake examples -nomake tests -I /home/benoit/Développement/Linux-Embedded/i.mx27_SD/usr/include -L /home/benoit/Développement/Linux-Embedded/i.mx27_SD/usr/lib -L /home/benoit/Développement/Linux-Embedded/i.mx27_SD/usr/lib/arm-linux-gnu ..... Build options: Configuration .......... accessibility audio-backend clock-gettime clock-monotonic compile_examples concurrent cross_compile enable_new_dtags evdev freetype full-config getaddrinfo getifaddrs harfbuzz iconv inotify ipv6ifname large-config largefile linuxfb medium-config minimal-config mremap nis no-pkg-config pcre png posix_fallocate precompile_header qpa qpa reduce_exports release rpath shared small-config system-jpeg system-png tslib zlib Build parts ............ libs Mode ................... release Using sanitizer(s)...... none Using C++11 ............ no Using gold linker....... no Using new DTAGS ........ yes Using PCH .............. yes Target compiler supports: Neon ................. no Qt modules and options: Qt D-Bus ............... no Qt Concurrent .......... yes Qt GUI ................. yes Qt Widgets ............. yes Large File ............. yes QML debugging .......... yes Use system proxies ..... no Support enabled for: Accessibility .......... yes ALSA ................... no CUPS ................... no Evdev .................. yes FontConfig ............. no FreeType ............... yes (bundled copy) Glib ................... no GStreamer .............. no GTK theme .............. no HarfBuzz ............... yes (bundled copy) Iconv .................. yes ICU .................... no Image formats: GIF .................. yes (plugin, using bundled copy) JPEG ................. yes (plugin, using system library) PNG .................. yes (in QtGui, using system library) journald ............... no libinput................ no mtdev .................. no Networking: getaddrinfo .......... yes getifaddrs ........... yes IPv6 ifname .......... yes libproxy.............. no OpenSSL .............. no NIS .................... yes OpenGL / OpenVG: EGL .................. no OpenGL ............... no OpenVG ............... no PCRE ................... yes (bundled copy) pkg-config ............. no PulseAudio ............. no QPA backends: DirectFB ............. no EGLFS ................ no EGLFS i.MX6....... . EGLFS KMS .......... no EGLFS Mali ......... EGLFS Raspberry Pi . EGLFS X11 .......... no LinuxFB .............. yes XCB .................. no Session management ..... yes SQL drivers: DB2 .................. no InterBase ............ no MySQL ................ no OCI .................. no ODBC ................. no PostgreSQL ........... no SQLite 2 ............. no SQLite ............... yes (plugin, using bundled copy) TDS .................. no tslib .................. yes udev ................... no xkbcommon-x11........... no xkbcommon-evdev......... no zlib ................... yes (bundled copy)
Make (end of)
arm-v4t-linux-gnueabi-g++ -c -include .pch/Qt5Core -pipe --sysroot=/opt/OSELAS.Toolchain-1.99.3/arm-v4t-linux-gnueabi/gcc-4.1.2-glibc-2.5-binutils-2.17-kernel-2.6.18/sysroot-arm-v4t-linux-gnueabi/ -O3 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_LIBINPUT -DQT_NO_USING_NAMESPACE -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -I. -I../3rdparty/zlib -I/home/benoit/Développement/Linux-Embedded/i.mx27_SD/usr/include -I../../include -I../../include/QtCore -I../../include/QtCore/5.5.0 -I../../include/QtCore/5.5.0/QtCore -Iglobal -I../3rdparty/pcre -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I../3rdparty/sha3 -I../3rdparty/forkfd -I.moc -I../../mkspecs/linux-arm-v4t-gnueabi-g++ -o .obj/qglobal.o global/qglobal.cpp ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h: In function 'int qt_safe_open(const char*, int, mode_t)': ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h:166: error: 'QT_OPEN' was not declared in this scope ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h: In function 'qint64 qt_safe_read(int, void*, qint64)': ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h:265: error: 'QT_READ' was not declared in this scope ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h: In function 'qint64 qt_safe_write(int, const void*, qint64)': ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h:274: error: 'QT_WRITE' was not declared in this scope ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h: In function 'int qt_safe_close(int)': ../../include/QtCore/5.5.0/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h:289: error: 'QT_CLOSE' was not declared in this scope global/qglobal.cpp: In function 'QByteArray getEtcFileContent(const char*)': global/qglobal.cpp:2151: error: 'QT_STATBUF' was not declared in this scope global/qglobal.cpp:2151: error: expected `;' before 'sbuf' global/qglobal.cpp:2152: error: 'sbuf' was not declared in this scope global/qglobal.cpp:2152: error: 'QT_FSTAT' was not declared in this scope global/qglobal.cpp:2157: error: 'sbuf' was not declared in this scope global/qglobal.cpp: In function 'bool readEtcLsbRelease(QUnixOSVersion&)': global/qglobal.cpp:2222: error: 'QT_STATBUF' was not declared in this scope global/qglobal.cpp:2222: error: expected `;' before 'sbuf' global/qglobal.cpp:2223: error: 'sbuf' was not declared in this scope global/qglobal.cpp:2223: error: 'QT_FSTAT' was not declared in this scope Makefile:10819: recipe for target '.obj/qglobal.o' failed make[3]: configure configure.bat gnuwin32 LGPL_EXCEPTION.txt LICENSE.FDL LICENSE.GPLv2 LICENSE.LGPLv21 LICENSE.LGPLv3 LICENSE.PREVIEW.COMMERCIAL Makefile qt3d qtactiveqt qtandroidextras qtbase qtcanvas3d qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtimageformats qtlocation qtmacextras qtmultimedia qt.pro qtquick1 qtquickcontrols qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtwebchannel qtwebengine qtwebkit qtwebkit-examples qtwebsockets qtwinextras qtx11extras qtxmlpatterns README [.obj/qglobal.o] Error 1 make[3]: Leaving directory '/home/benoit/Developpement/qt-everywhere-opensource-src-5.5.0/qtbase/src/corelib' Makefile:164: recipe for target 'sub-corelib-make_first' failed make[2]: configure configure.bat gnuwin32 LGPL_EXCEPTION.txt LICENSE.FDL LICENSE.GPLv2 LICENSE.LGPLv21 LICENSE.LGPLv3 LICENSE.PREVIEW.COMMERCIAL Makefile qt3d qtactiveqt qtandroidextras qtbase qtcanvas3d qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtimageformats qtlocation qtmacextras qtmultimedia qt.pro qtquick1 qtquickcontrols qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtwebchannel qtwebengine qtwebkit qtwebkit-examples qtwebsockets qtwinextras qtx11extras qtxmlpatterns README [sub-corelib-make_first] Error 2 make[2]: Leaving directory '/home/benoit/Developpement/qt-everywhere-opensource-src-5.5.0/qtbase/src' Makefile:45: recipe for target 'sub-src-make_first' failed make[1]: configure configure.bat gnuwin32 LGPL_EXCEPTION.txt LICENSE.FDL LICENSE.GPLv2 LICENSE.LGPLv21 LICENSE.LGPLv3 LICENSE.PREVIEW.COMMERCIAL Makefile qt3d qtactiveqt qtandroidextras qtbase qtcanvas3d qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtimageformats qtlocation qtmacextras qtmultimedia qt.pro qtquick1 qtquickcontrols qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtwebchannel qtwebengine qtwebkit qtwebkit-examples qtwebsockets qtwinextras qtx11extras qtxmlpatterns README [sub-src-make_first] Error 2 make[1]: Leaving directory '/home/benoit/Developpement/qt-everywhere-opensource-src-5.5.0/qtbase' Makefile:72: recipe for target 'module-qtbase-make_first' failed make: configure configure.bat gnuwin32 LGPL_EXCEPTION.txt LICENSE.FDL LICENSE.GPLv2 LICENSE.LGPLv21 LICENSE.LGPLv3 LICENSE.PREVIEW.COMMERCIAL Makefile qt3d qtactiveqt qtandroidextras qtbase qtcanvas3d qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtimageformats qtlocation qtmacextras qtmultimedia qt.pro qtquick1 qtquickcontrols qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland qtwebchannel qtwebengine qtwebkit qtwebkit-examples qtwebsockets qtwinextras qtx11extras qtxmlpatterns README [module-qtbase-make_first] Error 2
-
Hi and welcome to devnet,
That's a bit vague, can you please elaborate a bit what you are asking for ?
-
I manged tout build qt 4.5 for embedded i.mx27 before. But today it fail with qt 5.5 ans new "configuré" paramètres.
So i have few conected question:- Do we need "sysroot" paramétrer ?
- What configuré can get in "RootFS" ? Include files? Lib files?
- i have libpng.so,libjpeg.so files for arm in /usr/lib/arm-linux-gnu on host machine : are these libs usefull ?
- do qt need extra include or lib files for third-party? If yes , howto référence then to "configure" ?
-
- No you don't, but in this case, you will need to provide Qt's dependencies by hand
- configure will find there the dependencies for e.g. OpenGL, SQL drivers etc.
- Depends on whether you want to use Qt's provided libraries or not
- That depends on what feature you want to build. It's shown in
configure --help
-
You're welcome !
If that answers you're question, please mark the thread as solved using the "Topic Tool" button so that other forum users may know a solution has been found :)