Run Qt 5.3 on QNX 6.6
-
wrote on 22 Jul 2014, 02:33 last edited by
Hello.
I'm trying to run Qt widget application on QNX 6.6 target.
What I've done is below.-
Install qt on Ubuntu 12.04 via qt-enterprise-linux-x86-qnx-5.3.1.run downloaded from Qt digia website.
-
Setup QNX 6.6 + Qt 5.3, Linux + Qt 5.3 kit on QtCreator.
-
Build 'helloqt' program via New Project -> Applications -> Qt Widget Application template without any modification that displays an empty window.
-
Run 'helloqt' for linux and it works properly.
-
Prepare QNX target with QNX 6.6 SDP + Graphics Patch
-
Copy 'helloqt' for QNX to /root/qt5test/ on target.
-
Copy below directories to /opt/qt5/ on QNX target.
@ <QT_INSTALL_PATH>/5.3/qnx6-x86/lib
<QT_INSTALL_PATH>/5.3/qnx6-x86/plugins
<QT_INSTALL_PATH>/5.3/qnx6-x86/qml@ -
Add below to /root/.profile for environment setting.
@ export LD_LIBRARY_PATH=/lib:/usr/lib:/lib/dll:/opt/qt5/lib:/opt/qnx6/x86/lib:/opt/qnx6/x86/usr/lib:/opt/qnx6/x86/lib/dll
export QQNX_PHYSICAL_SCREEN_SIZE=150,90
export QT_PLUGIN_PATH=/opt/qt5/plugins
export QML2_IMPORT_PATH=/opt/qt5/qml
export GRAPHICS_ROOT=/usr/lib/graphics/intel-drm@ -
run '/sbin/drm-intel' on QNX target.(my target has graphic processor from intel)
-
run 'screen'
-
run '/root/qt5test/helloqt'
<Result>
@# cd /root/qt5test/./helloqt
slog2_api: cannot connect to slogger2 server...errno=No such file or directory
Error registering slogger2 buffer!
This application failed to start because it could not find or load the Qt platform plugin "qnx".Available platform plugins are: minimal, offscreen, qnx.
Reinstalling the application may fix this problem.
Abort
#@-
Three libraries below exist in '/opt/qt5/plugins/platforms'.
@ libqminimal.so
libqoffscreen.so
libqqnx.so@ -
Result is same no matter running drm-intel or screen.
-
Below is 'env' result.
@_=/usr/bin/env
SSH_CONNECTION=192.168.100.150 62661 192.168.100.177 22
PATH=/sbin:/usr/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/bin:/opt/sbin:/bin:/sbin:/usr/bin:/usr/sbin
SHELL=/bin/sh
TMPDIR=/tmp
HOSTNAME=localhost
USER=root
PROCESSOR=x86
MAIL=/var/spool/mail/root
LD_LIBRARY_PATH=/lib:/usr/lib:/lib/dll:/opt/qt5/lib:/opt/qnx6/x86/lib:/opt/qnx6/x86/usr/lib:/opt/qnx6/x86/lib/dll
HOME=/root
SSH_CLIENT=192.168.100.150 62661 22
QNX_HOST=/
QNX_TARGET=/
GRAPHICS_ROOT=/usr/lib/graphics/intel-drm
QQNX_PHYSICAL_SCREEN_SIZE=150,90
TERM=xterm
QML2_IMPORT_PATH=/opt/qt5/qml
QT_PLUGIN_PATH=/opt/qt5/plugins
QNX_CONFIGURATION=/etc/qnx
SSH_TTY=/dev/ttyp1
SYSNAME=nto
LOGNAME=root@
I'd googling but no luck and stuck on this.
Please let me know if any additional information is needed and any suggestions would be appreciated. -
-
wrote on 22 Jul 2014, 09:01 last edited by
Try set QT_DEBUG_PLUGINS=1 in your shell and watch console output
-
wrote on 23 Jul 2014, 00:19 last edited by
Thanks stuk. I set QT_DEBUG_PLUGINS=1 and output is below.
36: Found metadata in lib /opt/qt5/plugins/platforms/libqqnx.so, metadata= ...
...
51: loaded library "/opt/qt5/plugins/platforms/libqqnx.so"
52: QLibraryPrivate::loadPlugin failed on "/opt/qt5/plugins/platforms/libqqnx.so" : "Cannot load library /opt/qt5/plugins/platforms/libqqnx.so: (Library cannot be found)"As output message, looks like some modules found libqqnx.so but QLibraryPrivate didn't.
I'll post additional info if I figure out more about that.
Any help would be appreciated.<Full output log>
@QFactoryLoader::QFactoryLoader() checking directory path "/root/qt5test/platforms" ...
QFactoryLoader::QFactoryLoader() checking directory path "/opt/qt5/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/opt/qt5/plugins/platforms/libqminimal.so"
Found metadata in lib /opt/qt5/plugins/platforms/libqminimal.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.2",
"MetaData": {
"Keys": [
"minimal"
]
},
"className": "QMinimalIntegrationPlugin",
"debug": false,
"version": 328449
}Got keys from plugin meta data ("minimal")
QFactoryLoader::QFactoryLoader() looking at "/opt/qt5/plugins/platforms/libqoffscreen.so"
Found metadata in lib /opt/qt5/plugins/platforms/libqoffscreen.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.2",
"MetaData": {
"Keys": [
"offscreen"
]
},
"className": "QOffscreenIntegrationPlugin",
"debug": false,
"version": 328449
}Got keys from plugin meta data ("offscreen")
QFactoryLoader::QFactoryLoader() looking at "/opt/qt5/plugins/platforms/libqqnx.so"
Found metadata in lib /opt/qt5/plugins/platforms/libqqnx.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.2",
"MetaData": {
"Keys": [
"qnx"
]
},
"className": "QQnxIntegrationPlugin",
"debug": false,
"version": 328449
}Got keys from plugin meta data ("qnx")
loaded library "/opt/qt5/plugins/platforms/libqqnx.so"
QLibraryPrivate::loadPlugin failed on "/opt/qt5/plugins/platforms/libqqnx.so" : "Cannot load library /opt/qt5/plugins/platforms/libqqnx.so: (Library cannot be found)"
This application failed to start because it could not find or load the Qt platform plugin "qnx".Available platform plugins are: minimal, offscreen, qnx.
Reinstalling the application may fix this problem.
Abort@ -
wrote on 23 Jul 2014, 06:30 last edited by
Strange, is there the /opt/qt5/plugins/platforms/libqqnx.so plugin?
-
wrote on 23 Jul 2014, 07:08 last edited by
Yes, as I wrote at first post, that directory contains these three files.
@ libqminimal.so
libqoffscreen.so
libqqnx.so@And output said also
Found metadata in lib /opt/qt5/plugins/platforms/libqqnx.so ...
loaded library "/opt/qt5/plugins/platforms/libqqnx.so"I'm so curious why only QLibraryPrivate::loadPlugin failed to load.
-
wrote on 23 Jul 2014, 07:18 last edited by
How do you put these files? Are you sure all are compiled for qnx platform?
-
wrote on 23 Jul 2014, 09:01 last edited by
I use Qt Enterprise.
Built binaries are provided for enterprise customer from Digia.In my first post,
- Install qt on Ubuntu 12.04 via qt-enterprise-linux-x86-qnx-5.3.1.run downloaded from Qt digia website.
That's the one contains pre-built binaries for qnx target.
After install that <QT_INSTALL_PATH>/5.3/qnx6-x86/plugins/platforms has those files.BTW, you may ask why don't I ask to Digia, but they are on summer vacation and I'm urgent. :) And I posted this to Digia too.
-
wrote on 23 Jul 2014, 09:13 last edited by
If you use Qt Enterprise use the support that you buy :D Its rapid than this forum :)
Summer Vacation?!?!? Enterprise Support?!?!?!? No don't believe!
-
wrote on 23 Jul 2014, 09:41 last edited by
I've posted this to Digia, Qt-Project, foundry27 and got some help from foundry27 and here but no answer from Digia.
Local Digia reseller told me that they are on vacation. -
wrote on 25 Jul 2014, 07:47 last edited by
Digia support is too slow. 1 answer per two days. :(
-
wrote on 14 Feb 2015, 05:57 last edited by
Have you found a solution for this problem? I am currently getting exactly the same error message (with Qt 5.4.1).
-
wrote on 14 Feb 2015, 05:57 last edited by
Have you found a solution for this problem? I am currently getting exactly the same error message (with Qt 5.4.1).
-
wrote on 14 Feb 2015, 09:49 last edited by
Ok, it seems to be a bug. See here: https://bugreports.qt.io/browse/QTBUG-44476
-
wrote on 14 Feb 2015, 09:49 last edited by
Ok, it seems to be a bug. See here: https://bugreports.qt.io/browse/QTBUG-44476
-
wrote on 8 Mar 2016, 20:02 last edited by
It's a little bit late to ask for help here, but I faced the same problem mentioned above. Environment variables are set and libraries are also present. Has anybody find out how to fix this bug? I'm targeting QNX 6.6 installed on VMWare.
-
This post is deleted!