Qt 5.4 Linux deployment app could not find or load the Qt platform plugin xcb ? ( ldd is happy )



  • I installed Qt5.4 in an Ubuntu 10.04 LTS development VM. I can build and run aps fine in the VM.

    The problem is I cannot deploy to another Ubuntu 10.04 LTS machine.

    • I copied the Qt5.4 shared libs to /opt/lib/
    • I copied the /plugins/platform/ folder to /opt/lib/
    • I copied the qt54-hello test app to /opt/lib/
    • ldd has no complaints about either the qt54-hello app or /plugins/platforms/libqxcb.so

    @
    ldd /opt/lib/qt54-hello

    linux-gate.so.1 => (0x00c1a000)
    libQt5Widgets.so.5 => /opt/lib/libQt5Widgets.so.5 (0x00110000)
    libQt5Gui.so.5 => /opt/lib/libQt5Gui.so.5 (0x00c1b000)
    libQt5Core.so.5 => /opt/lib/libQt5Core.so.5 (0x0b5dc000)
    libGL.so.1 => /usr/lib/mesa/libGL.so.1 (0x009a1000)
    libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00787000)
    libstdc++.so.6 => /opt/lib/libstdc++.so.6 (0x007a0000)
    libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00a95000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0088c000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00abb000)
    libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x008ab000)
    libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x06207000)
    libX11.so.6 => /usr/lib/libX11.so.6 (0x090b5000)
    libicui18n.so.53 => /opt/lib/libicui18n.so.53 (0x023ee000)
    libicuuc.so.53 => /opt/lib/libicuuc.so.53 (0x13838000)
    libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x008ea000)
    libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x008ee000)
    librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x008f4000)
    /lib/ld-linux.so.2 (0x0093a000)
    libXext.so.6 => /usr/lib/libXext.so.6 (0x008fd000)
    libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x0090d000)
    libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00913000)
    libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00917000)
    libdrm.so.2 => /lib/libdrm.so.2 (0x00a15000)
    libpcre.so.3 => /lib/libpcre.so.3 (0x00957000)
    libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0091d000)
    libicudata.so.53 => /opt/lib/libicudata.so.53 (0xb627f000)
    libXau.so.6 => /usr/lib/libXau.so.6 (0x00988000)
    libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00a3e000)

    @

    @
    ldd /opt/lib/plugins/platforms/libqxcb.so

    linux-gate.so.1 => (0x00421000)
    libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x009a7000)
    libXi.so.6 => /usr/lib/libXi.so.6 (0x00275000)
    libSM.so.6 => /usr/lib/libSM.so.6 (0x00110000)
    libICE.so.6 => /usr/lib/libICE.so.6 (0x00163000)
    libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00ef8000)
    libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00568000)
    libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00631000)
    libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00b5d000)
    libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00c84000)
    libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00b37000)
    libX11.so.6 => /usr/lib/libX11.so.6 (0x00283000)
    libQt5Gui.so.5 => /opt/lib/libQt5Gui.so.5 (0x00efc000)
    libQt5DBus.so.5 => /opt/lib/libQt5DBus.so.5 (0x0017c000)
    libQt5Core.so.5 => /opt/lib/libQt5Core.so.5 (0x05985000)
    libGL.so.1 => /usr/lib/mesa/libGL.so.1 (0x00204000)
    libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00119000)
    libstdc++.so.6 => /opt/lib/libstdc++.so.6 (0x00807000)
    libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00132000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x009aa000)
    libXext.so.6 => /usr/lib/libXext.so.6 (0x003a0000)
    libuuid.so.1 => /lib/libuuid.so.1 (0x003b1000)
    /lib/ld-linux.so.2 (0x0048a000)
    libXau.so.6 => /usr/lib/libXau.so.6 (0x00158000)
    libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x0015c000)
    libz.so.1 => /lib/libz.so.1 (0x003b6000)
    libexpat.so.1 => /lib/libexpat.so.1 (0x003e5000)
    libpcre.so.3 => /lib/libpcre.so.3 (0x00422000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00453000)
    libicui18n.so.53 => /opt/lib/libicui18n.so.53 (0x0c924000)
    libicuuc.so.53 => /opt/lib/libicuuc.so.53 (0x00d4e000)
    libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00269000)
    librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x003cb000)
    libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x00533000)
    libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x0026f000)
    libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x003d4000)
    libdrm.so.2 => /lib/libdrm.so.2 (0x00bd6000)
    libicudata.so.53 => /opt/lib/libicudata.so.53 (0xb63d0000)
    @

    How can I determine what is missing if ldd is happy?

    Thanks in advance,

    -Ed



  • Never mind. I must have missed copying some shared library or other file that ldd does not detect. I am not sure really what I had missed.

    I do know that after I installed the qt-opensource-linux-x86-5.4.0-beta.run on my target, then set LD_LIBRARY_PATH to the install directory of the Qt shared libs, then all was good!

    export LD_LIBRARY_PATH=/opt/etc/Qt5.4.0/5.4/gcc/lib

    Now that I know it can work on this embedded Linux Atom machine, I will work on deploying only what is needed.

    -Ed


Log in to reply
 

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