Solved Building 5.9 from git
-
Hi,
I can't seem to build 5.9 from sources, I'm following the wiki guide and configuring like this:./configure -debug -opensource -nomake examples -nomake tests -confirm-license -prefix /home/nye/Programming/C++/qt/5.9
I see nothing unusual while
qmake
's being built, and the configure summary looks okay:Build type: linux-g++ (x86_64, CPU features: mmx sse sse2) Configuration: use_gold_linker sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl compile_examples enable_new_dtags f16c largefile optimize_debug precompile_header shared rpath debug c++11 c++14 c++1z concurrent dbus mremap reduce_exports reduce_relocations release_tools stl Build options: Mode ................................... debug; optimized tools Optimize debug build ................... yes Building shared libraries .............. yes Using C++ standard ..................... C++1z Using gold linker ...................... yes Using new DTAGS ........................ yes Using precompiled headers .............. yes Using LTCG ............................. no Target compiler supports: SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX .................................. AVX AVX2 F16C AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI Build parts ............................ libs tools Qt modules and options: Qt Concurrent .......................... yes Qt D-Bus ............................... yes Qt D-Bus directly linked to libdbus .... yes Qt Gui ................................. yes Qt Network ............................. yes Qt Sql ................................. yes Qt Testlib ............................. yes Qt Widgets ............................. yes Qt Xml ................................. yes Support enabled for: Using pkg-config ....................... yes QML debugging .......................... yes udev ................................... yes Using system zlib ...................... yes Qt Core: DoubleConversion ....................... yes Using system DoubleConversion ........ no GLib ................................... yes iconv .................................. no ICU .................................... yes Logging backends: journald ............................. no syslog ............................... no slog2 ................................ no Using system PCRE2 ..................... yes Qt Network: getaddrinfo() .......................... yes getifaddrs() ........................... yes IPv6 ifname ............................ yes libproxy ............................... no OpenSSL ................................ yes Qt directly linked to OpenSSL ........ no SCTP ................................... no Use system proxies ..................... yes Qt Sql: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... yes PostgreSQL ............................. yes SQLite2 ................................ no SQLite ................................. yes Using system provided SQLite ......... no TDS (Sybase) ........................... yes Qt Gui: Accessibility .......................... yes FreeType ............................... yes Using system FreeType ................ yes HarfBuzz ............................... yes Using system HarfBuzz ................ yes Fontconfig ............................. yes Image formats: GIF .................................. yes ICO .................................. yes JPEG ................................. yes Using system libjpeg ............... yes PNG .................................. yes Using system libpng ................ yes EGL .................................... yes OpenVG ................................. no OpenGL: Desktop OpenGL ....................... yes OpenGL ES 2.0 ........................ no OpenGL ES 3.0 ........................ no OpenGL ES 3.1 ........................ no Session Management ..................... yes Features used by QPA backends: evdev .................................. yes libinput ............................... yes mtdev .................................. yes tslib .................................. no xkbcommon-evdev ........................ yes QPA backends: DirectFB ............................... no EGLFS .................................. yes EGLFS details: EGLFS i.Mx6 .......................... no EGLFS i.Mx6 Wayland .................. no EGLFS EGLDevice ...................... yes EGLFS GBM ............................ yes EGLFS Mali ........................... no EGLFS Raspberry Pi ................... no EGL on X11 ........................... yes LinuxFB ................................ yes VNC .................................... yes Mir client ............................. no X11: Using system-provided XCB libraries .. yes EGL on X11 ........................... yes Xinput2 .............................. yes XCB XKB .............................. yes XLib ................................. yes XCB render ........................... yes XCB GLX .............................. yes XCB Xlib ............................. yes Using system-provided xkbcommon ...... yes Qt Widgets: GTK+ ................................... no Styles ................................. Fusion Windows Qt PrintSupport: CUPS ................................... yes Qt SerialBus: Socket CAN ............................. yes Socket CAN FD .......................... yes QtXmlPatterns: XML schema support ..................... yes Qt QML: QML interpreter ........................ yes QML network support .................... yes Qt Quick: Direct3D 12 ............................ no AnimatedImage item ..................... yes Canvas item ............................ yes Support for Quick Designer ............. yes Flipable item .......................... yes GridView item .......................... yes ListView item .......................... yes Path support ........................... yes PathView item .......................... yes Positioner items ....................... yes ShaderEffect item ...................... yes Sprite item ............................ yes Qt Gamepad: SDL2 ................................... no Qt 3D: Assimp ................................. yes System Assimp .......................... no Output Qt3D Job traces ................. no Output Qt3D GL traces .................. no Qt 3D GeometryLoaders: Autodesk FBX ........................... no Qt Wayland Drivers: EGL .................................... yes Raspberry Pi ........................... no XComposite EGL ......................... yes XComposite GLX ......................... yes DRM EGL ................................ yes libhybris EGL .......................... no Qt Wayland Client ........................ yes Qt Wayland Compositor .................... yes Qt Bluetooth: BlueZ .................................. no BlueZ Low Energy ....................... no Linux Crypto API ....................... no Qt Sensors: sensorfw ............................... no Qt Multimedia: ALSA ................................... yes GStreamer 1.0 .......................... yes GStreamer 0.10 ......................... no Video for Linux ........................ yes OpenAL ................................. no PulseAudio ............................. yes Resource Policy (libresourceqt5) ....... no Windows Audio Services ................. no DirectShow ............................. no Windows Media Foundation ............... no Qt Quick Controls 2: Styles ................................. Default Material Universal Qt Quick Templates 2: Hover support .......................... yes Qt Location: Gypsy GPS Daemon ....................... no WinRT Geolocation API .................. no
When I run make, however (
make -j8 module-qtbase
) I get the following:cd qtbase/ && ( test -e Makefile || /home/nye/Programming/C++/qt/src/qtbase/bin/qmake -o Makefile /home/nye/Programming/C++/qt/src/qtbase/qtbase.pro ) && make -f Makefile Info: creating cache file /home/nye/Programming/C++/qt/src/qtbase/.qmake.cache make[1]: Entering directory '/home/nye/Programming/C++/qt/src/qtbase' cd src/ && ( test -e Makefile || /home/nye/Programming/C++/qt/src/qtbase/bin/qmake -o Makefile /home/nye/Programming/C++/qt/src/qtbase/src/src.pro ) && make -f Makefile cd qmake/ && ( test -e Makefile.qmake-aux || /home/nye/Programming/C++/qt/src/qtbase/bin/qmake -o Makefile.qmake-aux /home/nye/Programming/C++/qt/src/qtbase/qmake/qmake-aux.pro ) && make -f Makefile.qmake-aux cd doc/ && ( test -e Makefile || /home/nye/Programming/C++/qt/src/qtbase/bin/qmake -o Makefile /home/nye/Programming/C++/qt/src/qtbase/doc/doc.pro ) && make -f Makefile make[2]: Entering directory '/home/nye/Programming/C++/qt/src/qtbase/doc' make[2]: Nothing to be done for 'first'. make[2]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase/doc' make[2]: Entering directory '/home/nye/Programming/C++/qt/src/qtbase/qmake' make binary make[3]: Entering directory '/home/nye/Programming/C++/qt/src/qtbase/qmake' g++ -c -o qlibraryinfo_final.o -pipe -std=c++11 -ffunction-sections -g -g -I/home/nye/Programming/C++/qt/src/qtbase/qmake -I/home/nye/Programming/C++/qt/src/qtbase/qmake/library -I/home/nye/Programming/C++/qt/src/qtbase/qmake/generators -I/home/nye/Programming/C++/qt/src/qtbase/qmake/generators/unix -I/home/nye/Programming/C++/qt/src/qtbase/qmake/generators/win32 -I/home/nye/Programming/C++/qt/src/qtbase/qmake/generators/mac -I../include -I../include/QtCore -I../include/QtCore/5.9.1 -I../include/QtCore/5.9.1/QtCore -I../src/corelib/global -I/home/nye/Programming/C++/qt/src/qtbase/mkspecs/linux-g++ -DQT_VERSION_STR=\"5.9.1\" -DQT_VERSION_MAJOR=5 -DQT_VERSION_MINOR=9 -DQT_VERSION_PATCH=1 -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DPROEVALUATOR_FULL -DQT_NO_FOREACH /home/nye/Programming/C++/qt/src/qtbase/src/corelib/global/qlibraryinfo.cpp make[2]: Entering directory '/home/nye/Programming/C++/qt/src/qtbase/src' cd tools/bootstrap/ && ( test -e Makefile || /home/nye/Programming/C++/qt/src/qtbase/bin/qmake -o Makefile /home/nye/Programming/C++/qt/src/qtbase/src/tools/bootstrap/bootstrap.pro ) && make -f Makefile Project MESSAGE: /home/nye/Programming/C++/qt/5.9/bin/syncqt -minimal -module QtCore -module QtXml -version 5.9.1 -outdir /home/nye/Programming/C++/qt/5.9 /home/nye/Programming/C++/qt/src/qtbase sh: 1: /home/nye/Programming/C++/qt/5.9/bin/syncqt: not found Project ERROR: Failed to run: /home/nye/Programming/C++/qt/5.9/bin/syncqt -minimal -module QtCore -module QtXml -version 5.9.1 -outdir /home/nye/Programming/C++/qt/5.9 /home/nye/Programming/C++/qt/src/qtbase Makefile:66: recipe for target 'sub-bootstrap-make_first' failed make[2]: *** [sub-bootstrap-make_first] Error 3 make[2]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase/src' Makefile:48: recipe for target 'sub-src-make_first' failed make[1]: *** [sub-src-make_first] Error 2 make[1]: *** Waiting for unfinished jobs.... g++ -o "../qmake/qmake" project.o option.o property.o main.o ioutils.o proitems.o qmakevfs.o qmakeglobals.o qmakeparser.o qmakeevaluator.o qmakebuiltins.o makefile.o unixmake2.o unixmake.o mingw_make.o winmakefile.o projectgenerator.o meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o qtextcodec.o qutfcodec.o qstring.o qstring_compat.o qstringbuilder.o qtextstream.o qiodevice.o qringbuffer.o qdebug.o qmalloc.o qglobal.o qarraydata.o qbytearray.o qbytearraymatcher.o qdatastream.o qbuffer.o qlist.o qfiledevice.o qfile.o qfilesystementry.o qfilesystemengine.o qfsfileengine.o qfsfileengine_iterator.o qregexp.o qbitarray.o qdir.o qdiriterator.o quuid.o qhash.o qfileinfo.o qdatetime.o qstringlist.o qabstractfileengine.o qtemporaryfile.o qmap.o qmetatype.o qsettings.o qsystemerror.o qvariant.o qvsnprintf.o qlocale.o qlocale_tools.o qlinkedlist.o qnumeric.o qcryptographichash.o qxmlstream.o qxmlutils.o qlogging.o qoperatingsystemversion.o qjson.o qjsondocument.o qjsonparser.o qjsonarray.o qjsonobject.o qjsonvalue.o qfilesystemengine_unix.o qfilesystemiterator_unix.o qfsfileengine_unix.o qlocale_unix.o qlibraryinfo_final.o -Wl,--gc-sections make[3]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase/qmake' make[2]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase/qmake' make[1]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase' Makefile:79: recipe for target 'module-qtbase' failed
The only (qmake) error I could see in the output is something with
syncqt
but I have no idea what that is to begin with.
Any advice is highly appreciated. -
@kshegunov I just reconfigured and run it again. It still working.
662 mkdir ../delete-me
663 #./configure -debug -opensource -nomake examples -nomake tests -confirm-license -prefix /home/nye/Programming/C++/qt/5.9
664 pwd
665 ./configure -debug -opensource -nomake examples -nomake tests -confirm-license -prefix /nodes/misc/storages/third-party-install/build/delete-me
666 make -j8 module-qtbaseMaybe you should just scratch it, make sure you have no weird config variables around and start over. Sometimes the universe just switches a fatal bit.
If you have ccache activated it will just takes a few minutes...
-
@kshegunov I just tried to compile 5.9 and I can not reproduce your error.
Build type: linux-g++ (x86_64, CPU features: mmx sse sse2) Configuration: use_gold_linker sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl compile_examples enable_new_dtags f16c largefile optimize_debug precompile_header shared rpath debug c++11 c++14 c++1z concurrent dbus mremap reduce_exports reduce_relocations release_tools stl Build options: Mode ................................... debug; optimized tools Optimize debug build ................... yes Building shared libraries .............. yes Using C++ standard ..................... C++1z Using gold linker ...................... yes Using new DTAGS ........................ yes Using precompiled headers .............. yes Using LTCG ............................. no Target compiler supports: SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX .................................. AVX AVX2 F16C AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI Build parts ............................ libs tools Qt modules and options: Qt Concurrent .......................... yes Qt D-Bus ............................... yes Qt D-Bus directly linked to libdbus .... yes Qt Gui ................................. yes Qt Network ............................. yes Qt Sql ................................. yes Qt Testlib ............................. yes Qt Widgets ............................. yes Qt Xml ................................. yes Support enabled for: Using pkg-config ....................... yes QML debugging .......................... yes udev ................................... yes Using system zlib ...................... yes Qt Core: DoubleConversion ....................... yes Using system DoubleConversion ........ no GLib ................................... yes iconv .................................. no ICU .................................... yes Logging backends: journald ............................. no syslog ............................... no slog2 ................................ no Using system PCRE2 ..................... no Qt Network: getaddrinfo() .......................... yes getifaddrs() ........................... yes IPv6 ifname ............................ yes libproxy ............................... no OpenSSL ................................ yes Qt directly linked to OpenSSL ........ no SCTP ................................... no Use system proxies ..................... yes Qt Sql: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... no PostgreSQL ............................. no SQLite2 ................................ no SQLite ................................. yes Using system provided SQLite ......... no TDS (Sybase) ........................... no Qt Gui: Accessibility .......................... yes FreeType ............................... yes Using system FreeType ................ yes HarfBuzz ............................... yes Using system HarfBuzz ................ yes Fontconfig ............................. yes Image formats: GIF .................................. yes ICO .................................. yes JPEG ................................. yes Using system libjpeg ............... yes PNG .................................. yes Using system libpng ................ yes EGL .................................... yes OpenVG ................................. no OpenGL: Desktop OpenGL ....................... yes OpenGL ES 2.0 ........................ no OpenGL ES 3.0 ........................ no OpenGL ES 3.1 ........................ no Session Management ..................... yes Features used by QPA backends: evdev .................................. yes libinput ............................... no mtdev .................................. yes tslib .................................. no xkbcommon-evdev ........................ yes QPA backends: DirectFB ............................... no EGLFS .................................. yes EGLFS details: EGLFS i.Mx6 .......................... no EGLFS i.Mx6 Wayland .................. no EGLFS EGLDevice ...................... yes EGLFS GBM ............................ no EGLFS Mali ........................... no EGLFS Raspberry Pi ................... no EGL on X11 ........................... yes LinuxFB ................................ yes VNC .................................... yes Mir client ............................. no X11: Using system-provided XCB libraries .. yes EGL on X11 ........................... yes Xinput2 .............................. yes XCB XKB .............................. yes XLib ................................. yes XCB render ........................... yes XCB GLX .............................. yes XCB Xlib ............................. yes Using system-provided xkbcommon ...... no Qt Widgets: GTK+ ................................... yes Styles ................................. Fusion Windows Qt PrintSupport: CUPS ................................... no Qt SerialBus: Socket CAN ............................. yes Socket CAN FD .......................... yes QtXmlPatterns: XML schema support ..................... yes Qt QML: QML interpreter ........................ yes QML network support .................... yes Qt Quick: Direct3D 12 ............................ no AnimatedImage item ..................... yes Canvas item ............................ yes Support for Quick Designer ............. yes Flipable item .......................... yes GridView item .......................... yes ListView item .......................... yes Path support ........................... yes PathView item .......................... yes Positioner items ....................... yes ShaderEffect item ...................... yes Sprite item ............................ yes Qt Gamepad: SDL2 ................................... no Qt 3D: Assimp ................................. yes System Assimp .......................... no Output Qt3D Job traces ................. no Output Qt3D GL traces .................. no Qt 3D GeometryLoaders: Autodesk FBX ........................... no Qt Wayland Drivers: EGL .................................... yes Raspberry Pi ........................... no XComposite EGL ......................... yes XComposite GLX ......................... yes DRM EGL ................................ yes libhybris EGL .......................... no Qt Wayland Client ........................ yes Qt Wayland Compositor .................... yes Qt Bluetooth: BlueZ .................................. no BlueZ Low Energy ....................... no Linux Crypto API ....................... no Qt Sensors: sensorfw ............................... no Qt Multimedia: ALSA ................................... no GStreamer 1.0 .......................... no GStreamer 0.10 ......................... yes Video for Linux ........................ yes OpenAL ................................. yes PulseAudio ............................. yes Resource Policy (libresourceqt5) ....... no Windows Audio Services ................. no DirectShow ............................. no Windows Media Foundation ............... no Qt Quick Controls 2: Styles ................................. Default Material Universal Qt Quick Templates 2: Hover support .......................... yes Qt Location: Gypsy GPS Daemon ....................... no WinRT Geolocation API .................. no Qt WebEngine: Embedded build ......................... no Pepper Plugins ......................... yes Printing and PDF ....................... yes Proprietary Codecs ..................... no Spellchecker ........................... yes WebRTC ................................. yes Using system ninja ..................... no ALSA ................................... no
Command history:
644 git clone git://code.qt.io/qt/qt5.git 645 git checkout 5.9 646 cd qt5 647 perl init-repository 648 ./configure -debug -opensource -nomake examples -nomake tests -confirm-license 649 vim configure 650 ./configure --help 651 ./configure --help | grep sync 652 ./configure --help | grep -Ii --help 653 ./configure --help | grep -Ii sync 654 make syncqt 655 make sync 656 find . -iname sync 657 find . -iname syncqt 658 find . -iname "*syncqt*" 659 make module-qtbase 660 history
Before that, I run:
sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev
sudo apt-get install build-essential perl python gitSystem is Ubuntu 17.04
I did not use -prefix in the configure command.
Since syncqt.pl is in:
merlin@headquarter:/nodes/misc/storages/third-party-install/build/qt5$ find . -iname "syncqt"
./qtbase/bin/syncqt.plYou may try and copy it to the location where your system is trying to find it.
-
@c64zottel said in Building 5.9 from git:
Thanks for your effort.I did not that -prefix in the configure command.
Please do if you could and let me know. From what I can tell the configure script sets the path for that script wrongly (I don't have it in the prefix path, nor should I - I have it in the source tree).
You may try and copy it to the location where your system is trying to find it.
This is a no-go, I have 3 other Qt builds, including a developer's build, and I'm not about to copy files around, much less into system locations without being absolutely sure I won't break something.
EDIT:
I think I misunderstood you if you meant me to copy the script into the prefix dir, I'll try that.EDIT 2:
Copying the script helps only partially. I don't get that error anymore, but instead the build fails later with:Project ERROR: Unknown module(s) in QT: bootstrap-private Project ERROR: Unknown module(s) in QT: bootstrap-private Makefile:116: recipe for target 'sub-rcc-make_first' failed make[2]: *** [sub-rcc-make_first] Error 3 make[2]: *** Waiting for unfinished jobs.... Makefile:141: recipe for target 'sub-qfloat16-tables-make_first' failed make[2]: *** [sub-qfloat16-tables-make_first] Error 3 Project ERROR: Unknown module(s) in QT: bootstrap-private Makefile:91: recipe for target 'sub-moc-make_first' failed make[2]: *** [sub-moc-make_first] Error 3 make[2]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase/src' Makefile:48: recipe for target 'sub-src-make_first' failed make[1]: *** [sub-src-make_first] Error 2 make[1]: Leaving directory '/home/nye/Programming/C++/qt/src/qtbase' Makefile:79: recipe for target 'module-qtbase' failed make: *** [module-qtbase] Error 2
-
@kshegunov I just reconfigured and run it again. It still working.
662 mkdir ../delete-me
663 #./configure -debug -opensource -nomake examples -nomake tests -confirm-license -prefix /home/nye/Programming/C++/qt/5.9
664 pwd
665 ./configure -debug -opensource -nomake examples -nomake tests -confirm-license -prefix /nodes/misc/storages/third-party-install/build/delete-me
666 make -j8 module-qtbaseMaybe you should just scratch it, make sure you have no weird config variables around and start over. Sometimes the universe just switches a fatal bit.
If you have ccache activated it will just takes a few minutes...
-
@c64zottel said in Building 5.9 from git:
Maybe you should just scratch it, make sure you have no weird config variables around and start over. Sometimes the universe just switches a fatal bit.
Did that before posting. I can definitely confirm this is a
configure
script problem, in-source build (without-prefix
) works perfectly fine.I just reconfigured and run it again. It still working.
Did you clean before rerunning
configure
?$> git submodule foreach --recursive "git clean -dfx" && git clean -dfx
-
@kshegunov I did now, still runs through. Did you install the dependencies as stated on the guide?
Another thing you can try:
Make your build options equal to the ones I listed above. There are some minor differences. (I doubt that this would help, but who knows)What's your system? Ubuntu 17.04?
-
@c64zottel said in Building 5.9 from git:
Did you install the dependencies as stated on the guide?
Make your build options equal to the ones I listed above.
Yes, of course. As I said in-source build works fine.
What's your system? Ubuntu 17.04?
Debian testing
Kernel is 4.9.0
g++ version is 6.3.0 -
Apparently a stray (hidden) cache file or folder. Everything builds normally now. Sorry for the noise.