Problem compiling Qt5.7.0 on Antergos Linux
-
Hello.
I am trying to compile Qt 5.7.0 Final from tar.gz Source Archive, as I need OpenSSL Support in my Application.
The Steps I do are:
- Open Yakuake
- Switch to "/home/oliver/developing/xsdf64" (which is the out of source build directory)
- Run the command
/home/oliver/developing/qt5src/configure -opensource -confirm-license -prefix /home/oliver/developing/qt-build64/ -opengl desktop -debug-and-release -developer-build -openssl -icu -nomake tests -nomake examples -no-warnings-are-errors -platform linux-g++-64 -c++std c++14
- And start compilation with "make -j 25" (which still dont fully utilize my old AMD 4 Core CPU)
But now, after over 12 hours, the moving Output still repeats thousands of lines with
/home/oliver/developing/xsdf64/qtbase/bin/qmake -qtconf /home/oliver/developing/xsdf64/qtbase/bin/qt.conf -o Makefile ../qt5src/qt.pro"
This is the full config.summary:
Configure summary Build type: linux-g++-64 (x86_64, CPU features: mmx sse sse2) Build options: Configuration .......... accessibility accessibility-atspi-bridge alsa audio-backend avx avx2 avx512bw avx512cd avx512dq avx512er avx512f avx512ifma avx512pf avx512vbmi avx512vl c++11 c++14 clock-gettime clock-monotonic compile_examples concurrent cups dbus dbus-linked debug doubleconversion egl eglfs eglfs_gbm egl_x11 enable_new_dtags evdev eventfd fontconfig full-config gbm getaddrinfo getifaddrs glib gstreamer-1.0 gtk3 headersclean iconv icu inotify ipv6ifname kms large-config largefile libinput libproxy libudev linuxfb medium-config minimal-config mremap mtdev nis opengl openssl png poll_ppoll posix_fallocate precompile_header private_tests pulseaudio qpa qpa reduce_exports reduce_relocations rpath shared small-config sse2 sse3 sse4_1 sse4_2 ssse3 system-freetype system-harfbuzz system-jpeg system-png system-zlib threadsafe-cloexec tslib use_gold_linker xcb xcb-glx xcb-plugin xcb-render xcb-sm xcb-xlib xinput2 xkbcommon-evdev xlib xrender Build parts ............ libs tools Mode ................... debug Using sanitizer(s)...... none Using C++ standard ..... c++14 Using gold linker....... yes Using new DTAGS ........ yes Using PCH .............. yes Using LTCG ............. no Target compiler supports: SSE .................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX .................. AVX AVX2 AVX512 ............... AVX512F AVX512ER AVX512CD AVX512PF AVX512DQ AVX512BW AVX512VL AVX512IFMA AVX512VBMI Qt modules and options: Qt D-Bus ............... yes (linked to dbus-1) 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 ................... yes CUPS ................... yes DoubleConversion........ yes (bundled copy) Evdev .................. yes FontConfig ............. yes FreeType ............... yes (system library) Glib ................... yes GStreamer .............. yes (1.0) GTK platformtheme ...... yes HarfBuzz ............... yes (system library) Iconv .................. yes ICU .................... yes Image formats: GIF .................. yes (plugin, using bundled copy) JPEG ................. yes (plugin, using system library) PNG .................. yes (in QtGui, using system library) libinput................ yes Logging backends: journald ............... no syslog ............... no mtdev .................. yes (system library) Networking: getaddrinfo .......... yes getifaddrs ........... yes IPv6 ifname .......... yes libproxy.............. yes OpenSSL .............. yes (loading libraries at run-time) NIS .................... yes OpenGL / OpenVG: EGL .................. yes OpenGL ............... desktop OpenVG ............... no PCRE ................... system pkg-config ............. yes PulseAudio ............. yes QPA backends: DirectFB ............. no EGLFS ................ yes EGLFS i.MX6 ........ no EGLFS i.MX6 Wayland. no EGLFS EGLDevice .... no EGLFS GBM .......... yes EGLFS Mali ......... no EGLFS Raspberry Pi . no EGLFS X11 .......... yes LinuxFB .............. yes Mir client............ no XCB .................. yes (system library) EGL on X ........... yes GLX ................ yes MIT-SHM ............ yes Xcb-Xlib ........... yes Xcursor ............ yes (loaded at runtime) Xfixes ............. yes (loaded at runtime) Xi2 ................ yes Xrandr ............. yes (loaded at runtime) Xrender ............ yes XKB ................ yes XShape ............. yes XSync .............. yes Session management ..... yes SQL drivers: DB2 .................. no InterBase ............ yes (plugin) MySQL ................ no OCI .................. no ODBC ................. no PostgreSQL ........... no SQLite 2 ............. no SQLite ............... yes (plugin, using bundled copy) TDS .................. no tslib .................. yes udev ................... yes xkbcommon-x11........... yes (system library) xkbcommon-evdev......... yes zlib ................... yes (system library)
Some System Specs:
- Antergos Linux x64 (Arch based)
- KDE 5 / Plasma 5 Desktop (with some Qt 5.6.1 Modules pre-installed as needed by KDE5)
- Python (3) and Python2 installed in parallel (which will become a Problem later as I need to compile QtWebEngine)
- AMD Phenom II 4x 965 BE
- 320 GB Free HDD Space
- RAM: 1.6-1.7 GB of 15.7 GB used (with make - j 25)
- SWAP Partition: 0.00 GB of 14.9 GB used (with make -j 25)
- GCC Version: 6.1.1-2
"Linux from Scratch" also recommend to set
export CXXFLAGS=-fno-delete-null-pointer-checks
to compile Qt 5.7.0 with GCC 6. But the Result makes no difference: under "xsdf64/" are still no "libs" and "include" folders.
I cancelled compilation for now.
This is the first time I try to compile Qt under Linux. I have some experience under Windows but this is a PITA. Any hint is welcome! :)
Thanks
Oliver -
I finally found the Problem. It is an absolutely dumb Problem:
I unpacked the Source Archive to /home/oliver/developing/qt5src/ directly.Which means I dont have "qt-everywhere-opensource-src-5.7.0" as a Parent Folder.
After re-unpacking the Archive and keeping the "qt-everywhere-opensource-src-5.7.0" as a Parent Folder, compilation is now running as it should.IMHO this is a Path finding Bug: I do the same under Windows and never have such Problems.
What an idiotic "Error" :(
Even after all these years, Linux has so many dumb usage Errors / Problems / Glitches etc. -
Hi,
Since you gave a prefix, remove the developer-build option.
Are you going to develop Qt ? If not then don't use the developer-build option.
-
@SGaist
Hello.I am so used to use that "-developer-build" parameter and it is part of my prepared commands which I C+P to the CMD Window / Bash. I had to use it in a older Qt 5.x Version as "-prefix" got totally ignored.
I simply never thought about it again.
Thanks for the reminder :)EDIT01: Do you know by any chance how I can compile the Debug and Release Libs/Tools in one run? Or do I have to compile them after each other? "-debug-and-release" is not a valid command on Linux.
-
Not valid ? What message did you get ?
-
@SGaist
Configure says something like "-debug-and-release is deprecated now and works only on MacOS. You can build Release Libraries with included debug Infos".If I do for example "-release -debug" or "-debug -release", only the last Parameter gets set / used.
Another Problem: I am also stuck with QtWebEngine and Python: Python2 and Python3 are installed in parallel (with Python3 as the Standard Python), and no matter what I try (i.e. setting an alias, setting an export in bash), the WebEngine config.tests only find Python 3. I will probably open another Thread about that in the WebEngine Subforum.
I am back on Windows for now. Thanks for your time on a weekend :)
-
Ok, I missed that one. So you can either build twice or as proposed release with debug information.
I haven't built that module yet so I can't help you about that matter.
You're welcome :)