configure -skip options being ignored?
-
I may be misunderstanding the point of the "-skip [module]" arguments for the configuration step of compiling Qt from source. I would expect it would not attempt to build or install this in any way.
Qt source branch 5.7
Ubuntu 16.04Given this configuration sting:
./configure \ -device linux-beagleboard-g++ \ -device-option CROSS_COMPILE=/opt/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- \ -sysroot /mnt/rootfs \ -prefix /usr/local/qt5bbb \ -hostprefix /usr/local/qt5bbb \ -opensource \ -confirm-license \ -reduce-exports \ -release \ -make libs \ -accessibility \ -openssl \ -opengl es2 \ -egl \ -eglfs \ -qt-zlib \ -qt-libpng \ -qt-libjpeg \ -qt-xcb \ -qt-pcre \ -qt-freetype \ -no-glib \ -no-cups \ -no-qml-debug \ -no-xinput2 \ -no-sm \ -no-icu \ -nomake tests \ -skip qtwayland \ -skip qtactiveqt \ -skip qtlocation \ -skip qtmultimedia \ -skip qtserialport \ -skip qtquickcontrols \ -skip qtscript \ -skip qtsensors \ -skip qtwebsockets \ -skip qtxmlpatterns \ -skip qt3d \ -skip qtcharts \ -skip qtscript \ -skip qttranslations \ -skip qtgamepad \ -skip qtwebchannel \ -skip qtandroidextras \ -v
I get this ouput:
Build options: Configuration .......... accessibility accessibility-atspi-bridge audio-backend c++11 c++14 clock-gettime clock-monotonic compile_examples concurrent cross_compile dbus dbus-linked doubleconversion egl eglfs eglfs_egldevice egl_x11 enable_new_dtags evdev eventfd freetype full-config getaddrinfo getifaddrs harfbuzz iconv inotify ipv6ifname kms large-config largefile libudev linuxfb medium-config minimal-config mremap neon no-libdl no-qml-debug opengl opengles2 openssl pcre png poll_ppoll posix_fallocate precompile_header qpa qpa reduce_exports release rpath shared small-config threadsafe-cloexec use_gold_linker xcb xcb-glx xcb-plugin xcb-qt xcb-xlib xkbcommon-evdev xkbcommon-qt xlib xrender zlib Build parts ............ libs Mode ................... release 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: Neon ................. yes 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 .......... no Use system proxies ..... no Support enabled for: Accessibility .......... yes ALSA ................... no CUPS ................... no DoubleConversion........ yes (bundled copy) Evdev .................. yes FontConfig ............. no FreeType ............... qt Glib ................... no GStreamer .............. no GTK platformtheme ...... no HarfBuzz ............... yes (bundled copy) Iconv .................. yes ICU .................... no Image formats: GIF .................. yes (plugin, using bundled copy) JPEG ................. yes (plugin, using bundled copy) PNG .................. yes (in QtGui, using bundled copy) libinput................ no Logging backends: journald ............... no syslog ............... no mtdev .................. no Networking: getaddrinfo .......... yes getifaddrs ........... yes IPv6 ifname .......... yes libproxy.............. no OpenSSL .............. yes (loading libraries at run-time) OpenGL / OpenVG: EGL .................. yes OpenGL ............... yes (OpenGL ES 2.0+) OpenVG ............... no PCRE ................... yes (bundled copy) pkg-config ............. yes PulseAudio ............. no QPA backends: DirectFB ............. no EGLFS ................ yes EGLFS i.MX6 ........ no EGLFS i.MX6 Wayland. no EGLFS EGLDevice .... yes EGLFS GBM .......... no EGLFS Mali ......... no EGLFS Raspberry Pi . no EGLFS X11 .......... yes LinuxFB .............. yes Mir client............ no XCB .................. yes (bundled copy) EGL on X ........... yes GLX ................ yes MIT-SHM ............ yes Xcb-Xlib ........... yes Xcursor ............ yes (loaded at runtime) Xfixes ............. yes (loaded at runtime) Xi2 ................ no Xrandr ............. yes (loaded at runtime) Xrender ............ yes XKB ................ yes XShape ............. yes XSync .............. yes Session management ..... no 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 .................. no udev ................... yes xkbcommon-x11........... yes (bundled copy, XKB config root: /usr/share/X11/xkb) xkbcommon-evdev......... yes zlib ................... yes (bundled copy)
However, when I check the Makefile, I can clearly see many references to things like qtwayland, qtgamepad, etc:
MAKEFILE = Makefile first: make_first QMAKE = /opt/Qt/qt5/qtbase/bin/qmake DEL_FILE = rm -f CHK_DIR_EXISTS= test -d MKDIR = mkdir -p COPY = cp -f COPY_FILE = cp -f COPY_DIR = cp -f -R INSTALL_FILE = install -m 644 -p INSTALL_PROGRAM = install -m 755 -p INSTALL_DIR = cp -f -R DEL_FILE = rm -f SYMLINK = ln -f -s DEL_DIR = rmdir MOVE = mv -f TAR = tar -cf COMPRESS = gzip -9f DISTNAME = qt1.0.0 DISTDIR = /opt/Qt/qt5/.tmp/qt1.0.0 SUBTARGETS = \ module-qtbase \ module-qtmacextras \ module-qtx11extras \ module-qtimageformats \ module-qtandroidextras \ module-qtserialport \ module-qtserialbus \ module-qtactiveqt \ module-qtxmlpatterns \ module-qtsvg \ module-qtdeclarative \ module-qtscxml \ module-qtpurchasing \ module-qtcanvas3d \ module-qtwebsockets \ module-qtwebchannel \ module-qtgamepad \ module-qt3d \ module-qtwayland \ module-qtconnectivity \ module-qtsensors \ module-qtgraphicaleffects \ module-qtquickcontrols2 \ module-qtquickcontrols \ module-qtlocation \ module-qtmultimedia \ module-qtvirtualkeyboard \ module-qtdatavis3d \ module-qtcharts \ module-qtwinextras \ module-qttools \ module-qtscript \ module-qtwebengine \ module-qtwebview \ module-qttranslations \ module-qtdoc \ module-qtqa
So am I missing something? As stated at the start, I would expect "-skip" to exclude things like wayland, gamepad, webkit, multimedia ??
-
@While_e said in configure -skip options being ignored?:
As stated at the start, I would expect "-skip" to exclude things like wayland, gamepad, webkit, multimedia ??
They are excluded from compilation, don't worry (unless there was some bug with that on Qt 5.7... I strongly recommend using a newer version).
If you want to be 110% sure, you can remove these modules' directories from your hard drive. Qt configuration script handles that nicely.
-
@While_e said in configure -skip options being ignored?:
By your statement "I strongly recommend using a newer version", did you mean of Qt in general?
Yes. Qt 5.12 is the newest LTS release, and it contains a ton of performance optimizations, bug fixes and security fixes when compared to 5.7.