From 10:00 CET Friday 22nd November we will adjust how the server works to deal with some recently reported problems. Therefore there may be a load problem, if you experience more problems than usual trying to access the forum then please PM AndyS or any of the moderators so they can inform me.


Qt 5.8 and Raspberry Pi



  • Hello all!

    I just managed cross compilation using Mac OS X 10.12 (Sierra) and Qt 5.8 for ARM (Rasprerry Pi). However it would be too easy if i do not encounter any problems. I create a very simple app, configure enviroment to execute it remotely from qt creator however I still got error once i try to execute:

    Cannot load library /usr/local/qt5pi/plugins/platforms/libqeglfs.so: (This platform does not support dynamic libraries.)
    QLibraryPrivate::loadPlugin failed on "/usr/local/qt5pi/plugins/platforms/libqeglfs.so" : "Cannot load library /usr/local/qt5pi/plugins/platforms/libqeglfs.so: (This platform does not support dynamic libraries.)"
    This application failed to start because it could not find or load the Qt platform plugin "eglfs"
    in "".

    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc.

    Reinstalling the application may fix this problem.
    Aborted
    looks like plugin is properly loaded:

    QT_DEBUG_PLUGINS=1 ./testrpi
    QFactoryLoader::QFactoryLoader() checking directory path "/usr/local/qt5pi/plugins/platforms" ...
    QFactoryLoader::QFactoryLoader() looking at "/usr/local/qt5pi/plugins/platforms/libqeglfs.so"
    Found metadata in lib /usr/local/qt5pi/plugins/platforms/libqeglfs.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "eglfs"
    ]
    },
    "className": "QEglFSIntegrationPlugin",
    "debug": false,
    "version": 329728
    }
    but i think this line explains everything:

    QLibraryPrivate::loadPlugin failed on "/usr/local/qt5pi/plugins/platforms/libqeglfs.so" : "Cannot load library /usr/local/qt5pi/plugins/platforms/libqeglfs.so: (This platform does not support dynamic libraries.)"
    and now my question is - what does it mean "This platform does not support dynamic libraries". How can i make my app working?

    ldd shows that all libs exist, strace never shows open with negative resutlt. Im stuck, so any help appriciated!

    regards


  • Qt Champions 2018

    @sieciech What does

    file /usr/local/qt5pi/plugins/platforms/libqeglfs.so
    

    say?
    What operating system do you run on your PI?



  • /usr/local/qt5pi/plugins/platforms/libqeglfs.so: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, BuildID[sha1]=a21fa77208c7ccc1ac74c28e717a88458f012568, stripped

    i got
    pi@raspberrypi:~ $ cat /etc/*-release
    PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
    NAME="Raspbian GNU/Linux"
    VERSION_ID="8"
    VERSION="8 (jessie)"
    ID=raspbian
    ID_LIKE=debian
    HOME_URL="http://www.raspbian.org/"
    SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
    BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
    pi@raspberrypi:~ $ cat /proc/version
    Linux version 4.4.27+ (root@vagrant-ubuntu-trusty-32) (gcc version 4.7.1 20120402 (prerelease) (crosstool-NG 1.15.2) ) #2 Wed Oct 26 18:58:15 UTC 2016



  • if a shared depency is missing, the libqeglfs.so is not loaded.
    check all dependencies with ldd /usr/local/qt5pi/plugins/platforms/libqeglfs.so
    post the output



  • Ok problem was in build of qtcorelib, in file qtbase/src/corelib/plugin/qtlibrary_unix.cpp in which flag:

    QT_NO_DYNAMIC_LIBRARY
    was defined and caused all problems. Solution was to do" undef QT_NO_DYNAMIC_LIBRARY just after this define and rebuild qtcore library.

    regards!



  • Sorry to resurrect an old topic, but how did you manage to configure Qt on os x? I'm using Jared Wolff's toolchain but get stuck at ./configure and can't build a RPi-friendly qmake.


Log in to reply