Qt5 on beagleboard



  • Hi all,
    I've been following this instructions: http://qt-project.org/wiki/TIBeagleBoard
    so I can build qt5 on my beagleboard Xm.
    in this instruction it says to build a console-image file system, but than there is no x-server and therefor, when trying to launch my qt app is gives: Could not initialize egl display.
    can anyone tell me which file system image should I use for qt5 to run with multimedia (with opengl)?
    (The qmake compiles and the qt application as well)

    Thanks!



  • I managed to find the file system, I've used xfce created by bitbake and also compiled libgles-omap3 and installed the ipks.

    Now when I try to launch my application I get:
    root@beagleboard:~# ./myPlayer
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    EGLFS: Unable to query physical screen size, defaulting to 100 dpi.
    EGLFS: To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
    EGL Error : Could not create the egl surface: error = 0x3001

    Aborted

    and is I export display:
    export DISPLAY=:0
    I get:
    root@beagleboard:~# ./myPlayer
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    EGLFS: Unable to query physical screen size, defaulting to 100 dpi.
    EGLFS: To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
    X Error of failed request: BadWindow (invalid Window parameter)
    Major opcode of failed request: 3 (X_GetWindowAttributes)
    Resource id in failed request: 0x0
    Serial number of failed request: 7
    Current serial number in output stream: 8

    any ideas?...

    Thanks again, Aline



  • eglfs is for running apps without X. It still needs a working EGL/GLES implementation (which you presumably have from libomap3-gles) but no X server is required.

    If you really need to run your app under X, try ./myPlayer -platform xcb and see what happens. However this is most likely not what you need here.

    How was Qt configured?



  • the configuration:
    ./configure -opensource -confirm-license -no-pch -opengl -release -force-debug-info -device linux-beagleboard-g++ -make libs -nomake tests -nomake examples -device-option CROSS_COMPILE=/home/bitbake-branch1.3/setup-scripts/build/tmp-angstrom_v2012_12-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-vfp-neon-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi- -sysroot /home/bitbake-branch1.3/setup-scripts/build/tmp-angstrom_v2012_12-eglibc/sysroots/beagleboard -qt-xcb -no-gtkstyle -widgets

    Now I've managed to get to:
    root@beagleboard:~# ./myPlayer
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    EGLFS: Unable to query physical screen size, defaulting to 100 dpi.
    EGLFS: To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable.
    defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
    This plugin does not support propagateSizeHints()
    This plugin does not support propagateSizeHints()

    I've installed all the gstreamer plugins...



  • and:
    root@beagleboard:~# ./myPlayer -platform xcb
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    QXcbConnection: Could not connect to display
    Aborted

    and I have installed:
    root@beagleboard:~# opkg list-installed |grep xserver
    packagegroup-core-x11-xserver - 1.0-r40
    packagegroup-gnome-xserver-base - 1.0-r13
    xserver-common - 1.34-r8.7
    xserver-xf86-config - 0.1-r23.2
    xserver-xorg - 2:1.11.2-r11.13
    root@beagleboard:~# opkg list-installed |grep xcb
    libx11-xcb1 - 1:1.5.0-r9.2
    libxcb-composite0 - 1.8.1-r0.9
    libxcb-damage0 - 1.8.1-r0.9
    libxcb-dev - 1.8.1-r0.9
    libxcb-dpms0 - 1.8.1-r0.9
    libxcb-dri2-0 - 1.8.1-r0.9
    libxcb-glx0 - 1.8.1-r0.9
    libxcb-randr0 - 1.8.1-r0.9
    libxcb-record0 - 1.8.1-r0.9
    libxcb-render0 - 1.8.1-r0
    libxcb-res0 - 1.8.1-r0.9
    libxcb-screensaver0 - 1.8.1-r0.9
    libxcb-shape0 - 1.8.1-r0.9
    libxcb-shm0 - 1.8.1-r0
    libxcb-sync0 - 1.8.1-r0.9
    libxcb-util1 - 0.3.9-r0
    libxcb-xevie0 - 1.8.1-r0.9
    libxcb-xf86dri0 - 1.8.1-r0.9
    libxcb-xfixes0 - 1.8.1-r0.9
    libxcb-xinerama0 - 1.8.1-r0.9
    libxcb-xprint0 - 1.8.1-r0.9
    libxcb-xtest0 - 1.8.1-r0.9
    libxcb-xv0 - 1.8.1-r0.9
    libxcb-xvmc0 - 1.8.1-r0.9
    libxcb1 - 1.8.1-r0.9
    xcb-proto-dev - 1.7.1-r0.7

    thanks!


Log in to reply
 

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