Compiling Qt 5 without X11 nor Wayland



  • Hi,

    I'm trying to build Qt 5 on an embedded linux system which does not have X11 nor Wayland. It has OpenGL ES 2.0 and EGL and I was hoping to use the eglfs platform. However, when I try to run configure I get notified that I have neither xcb nor wayland and that I may disable both but it will disable graphics. So.... how can I use Qt 5 with OpenGL ES 2.0 + EGL using eglfs?

    Thanks, and hope it's not a repeat question... (I did search :-))

    -Yuval



  • Anyone? :-)



  • I've never done it myself, but I'm sure it's possible. Maybe check out the code for lighthouse-android at: http://gitorious.org/~taipan/qt/android-lighthouse Sorry I can't be of more help.



  • I saw this just now. I am not sure if you have already compiled. use this for configuring:

    @ ./configure -prefix $PWD/install -xplatform linux-arm -opensource -confirm-license -no-xcb -eglfs -opengl es2 @

    I was able to compile and run with this.



  • I have a question which might apply to this thread. I am trying to configure Qt5.3.2 to enable egl, eglfs, but have all X11 parts disabled.

    However, for an linux open-embedded arm device, the EGL-X11 auto-detection ... () is enabling EGL-X11, but I do not want this enabled.

    Do you know how do disable EGL-X11 as a configuration option?

    My Summary:
    @Build options:
    Configuration .......... alsa audio-backend c++11 clock-gettime clock-monotonic compile_examples concurrent cross_compile dbus egl egl_x11 eglfs evdev eventfd freetype full-config getaddrinfo getifaddrs glib iconv inotify ipv6ifname large-config largefile libudev linuxfb medium-config minimal-config mremap nis no-harfbuzz opengl opengles2 openssl-linked pcre png posix_fallocate qpa qpa reduce_exports release shared silent small-config system-jpeg system-png system-zlib xlib
    Build parts ............ tools libs
    Mode ................... release
    Using C++11 ............ yes
    Using PCH .............. no
    Target compiler supports:
    iWMMXt/Neon .......... no/auto

    Qt modules and options:
    Qt D-Bus ............... yes (loading dbus-1 at runtime)
    Qt Concurrent .......... yes
    Qt GUI ................. yes
    Qt Widgets ............. yes
    Large File ............. yes
    QML debugging .......... yes
    Use system proxies ..... no

    Support enabled for:
    Accessibility .......... no
    ALSA ................... yes
    CUPS ................... no
    Evdev .................. yes
    FontConfig ............. no
    FreeType ............... yes (bundled copy)
    Glib ................... yes
    GTK theme .............. no
    HarfBuzz ............... no
    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
    mtdev .................. no
    Networking:
    getaddrinfo .......... yes
    getifaddrs ........... yes
    IPv6 ifname .......... yes
    OpenSSL .............. yes (linked to the libraries)
    NIS .................... yes
    OpenGL / OpenVG:
    EGL .................. yes
    OpenGL ............... yes (OpenGL ES 2.x)
    OpenVG ............... no
    PCRE ................... yes (bundled copy)
    pkg-config ............. yes
    PulseAudio ............. no
    QPA backends:
    DirectFB ............. no
    EGLFS ................ yes
    KMS .................. no
    LinuxFB .............. yes
    XCB .................. no
    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
    udev ................... yes
    xkbcommon .............. no
    zlib ................... yes (system library)@

    My configuration statement:
    @ ${S}/configure -v
    -opensource -confirm-license
    -sysroot ${STAGING_DIR_TARGET}
    -no-gcc-sysroot
    -prefix ${OE_QMAKE_PATH_PREFIX}
    -bindir ${OE_QMAKE_PATH_BINS}
    -libdir ${OE_QMAKE_PATH_LIBS}
    -datadir ${OE_QMAKE_PATH_DATA}
    -sysconfdir ${OE_QMAKE_PATH_SETTINGS}
    -docdir ${OE_QMAKE_PATH_DOCS}
    -headerdir ${OE_QMAKE_PATH_HEADERS}
    -archdatadir ${OE_QMAKE_PATH_ARCHDATA}
    -libexecdir ${OE_QMAKE_PATH_LIBEXECS}
    -plugindir ${OE_QMAKE_PATH_PLUGINS}
    -importdir ${OE_QMAKE_PATH_IMPORTS}
    -qmldir ${OE_QMAKE_PATH_QML}
    -translationdir ${OE_QMAKE_PATH_TRANSLATIONS}
    -testsdir ${OE_QMAKE_PATH_TESTS}
    -examplesdir ${OE_QMAKE_PATH_EXAMPLES}
    -hostbindir ${OE_QMAKE_PATH_HOST_BINS}
    -hostdatadir ${OE_QMAKE_PATH_HOST_DATA}
    -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}
    -platform ${TOPDIR}/out/sysroots/x86_64-linux/usr/lib/qt5/mkspecs/linux-g++
    -xplatform linux-oe-g++
    -optimized-qmake
    -shared \
    -silent \
    -no-pch \
    -no-rpath \
    -pkg-config \
    -no-xcb
    -no-sql-db2
    -no-mtdev
    -no-gtkstyle
    -nomake tests
    -system-libjpeg
    -openssl-linked
    -nomake examples
    -no-xfixes
    -no-sql-mysql
    -opengl es2
    -eglfs
    -qpa eglfs
    -make tools \
    -qt-pcre
    -iconv
    -no-xkb
    -no-xkbcommon
    -no-fontconfig
    -no-kms
    -system-libpng
    -no-tslib
    -no-icu
    -no-directfb
    -glib
    -no-sql-oci
    -no-xinerama
    -no-sql-sqlite2
    -accessibility
    -widgets
    -no-xrandr
    -linuxfb
    -no-libudev
    -no-xcursor
    -no-sql-psql
    -make libs
    -nis
    -no-openvg
    -no-xvideo
    -no-xsync
    -no-sql-tds
    -no-xshape
    -dbus
    -system-zlib
    -no-pulseaudio
    -no-xrender
    -no-mitshm
    -no-sm
    -no-xinput
    -no-sql-ibase \
    -no-xinput2
    -alsa
    -no-sql-odbc
    -release @

    Thanks.



  • I have a question which might apply to this thread. I am trying to configure Qt5.3.2 to enable egl, eglfs, but have all X11 parts disabled.

    However, for an linux open-embedded arm device, the EGL-X11 auto-detection ... () is enabling EGL-X11, but I do not want this enabled.

    Do you know how do disable EGL-X11 as a configuration option?

    My Summary:
    @Build options:
    Configuration .......... alsa audio-backend c++11 clock-gettime clock-monotonic compile_examples concurrent cross_compile dbus egl egl_x11 eglfs evdev eventfd freetype full-config getaddrinfo getifaddrs glib iconv inotify ipv6ifname large-config largefile libudev linuxfb medium-config minimal-config mremap nis no-harfbuzz opengl opengles2 openssl-linked pcre png posix_fallocate qpa qpa reduce_exports release shared silent small-config system-jpeg system-png system-zlib xlib
    Build parts ............ tools libs
    Mode ................... release
    Using C++11 ............ yes
    Using PCH .............. no
    Target compiler supports:
    iWMMXt/Neon .......... no/auto

    Qt modules and options:
    Qt D-Bus ............... yes (loading dbus-1 at runtime)
    Qt Concurrent .......... yes
    Qt GUI ................. yes
    Qt Widgets ............. yes
    Large File ............. yes
    QML debugging .......... yes
    Use system proxies ..... no

    Support enabled for:
    Accessibility .......... no
    ALSA ................... yes
    CUPS ................... no
    Evdev .................. yes
    FontConfig ............. no
    FreeType ............... yes (bundled copy)
    Glib ................... yes
    GTK theme .............. no
    HarfBuzz ............... no
    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
    mtdev .................. no
    Networking:
    getaddrinfo .......... yes
    getifaddrs ........... yes
    IPv6 ifname .......... yes
    OpenSSL .............. yes (linked to the libraries)
    NIS .................... yes
    OpenGL / OpenVG:
    EGL .................. yes
    OpenGL ............... yes (OpenGL ES 2.x)
    OpenVG ............... no
    PCRE ................... yes (bundled copy)
    pkg-config ............. yes
    PulseAudio ............. no
    QPA backends:
    DirectFB ............. no
    EGLFS ................ yes
    KMS .................. no
    LinuxFB .............. yes
    XCB .................. no
    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
    udev ................... yes
    xkbcommon .............. no
    zlib ................... yes (system library)@

    My configuration statement:
    @ ${S}/configure -v
    -opensource -confirm-license
    -sysroot ${STAGING_DIR_TARGET}
    -no-gcc-sysroot
    -prefix ${OE_QMAKE_PATH_PREFIX}
    -bindir ${OE_QMAKE_PATH_BINS}
    -libdir ${OE_QMAKE_PATH_LIBS}
    -datadir ${OE_QMAKE_PATH_DATA}
    -sysconfdir ${OE_QMAKE_PATH_SETTINGS}
    -docdir ${OE_QMAKE_PATH_DOCS}
    -headerdir ${OE_QMAKE_PATH_HEADERS}
    -archdatadir ${OE_QMAKE_PATH_ARCHDATA}
    -libexecdir ${OE_QMAKE_PATH_LIBEXECS}
    -plugindir ${OE_QMAKE_PATH_PLUGINS}
    -importdir ${OE_QMAKE_PATH_IMPORTS}
    -qmldir ${OE_QMAKE_PATH_QML}
    -translationdir ${OE_QMAKE_PATH_TRANSLATIONS}
    -testsdir ${OE_QMAKE_PATH_TESTS}
    -examplesdir ${OE_QMAKE_PATH_EXAMPLES}
    -hostbindir ${OE_QMAKE_PATH_HOST_BINS}
    -hostdatadir ${OE_QMAKE_PATH_HOST_DATA}
    -external-hostbindir ${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}
    -platform ${TOPDIR}/out/sysroots/x86_64-linux/usr/lib/qt5/mkspecs/linux-g++
    -xplatform linux-oe-g++
    -optimized-qmake
    -shared \
    -silent \
    -no-pch \
    -no-rpath \
    -pkg-config \
    -no-xcb
    -no-sql-db2
    -no-mtdev
    -no-gtkstyle
    -nomake tests
    -system-libjpeg
    -openssl-linked
    -nomake examples
    -no-xfixes
    -no-sql-mysql
    -opengl es2
    -eglfs
    -qpa eglfs
    -make tools \
    -qt-pcre
    -iconv
    -no-xkb
    -no-xkbcommon
    -no-fontconfig
    -no-kms
    -system-libpng
    -no-tslib
    -no-icu
    -no-directfb
    -glib
    -no-sql-oci
    -no-xinerama
    -no-sql-sqlite2
    -accessibility
    -widgets
    -no-xrandr
    -linuxfb
    -no-libudev
    -no-xcursor
    -no-sql-psql
    -make libs
    -nis
    -no-openvg
    -no-xvideo
    -no-xsync
    -no-sql-tds
    -no-xshape
    -dbus
    -system-zlib
    -no-pulseaudio
    -no-xrender
    -no-mitshm
    -no-sm
    -no-xinput
    -no-sql-ibase \
    -no-xinput2
    -alsa
    -no-sql-odbc
    -release @

    Thanks.



  • egl-x11 is irrelevant if you are not using the xcb platform plugin. In your case xcb is disabled completely so the fact that EGL support under X11 is reported as available has no consequences whatsoever.



  • egl-x11 is irrelevant if you are not using the xcb platform plugin. In your case xcb is disabled completely so the fact that EGL support under X11 is reported as available has no consequences whatsoever.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.