2

我正在尝试让 Qt 应用程序在 QNX 4.5 上运行。我已经用这个配置在一个 linux 机器上编译了 Qt 4.6.3:

./configure -xplatform 不支持/qws/qnx-i386-g++ -embedded i386 -no-gfx-linuxfb -no-mouse-linuxtp -no-kbd-tty -no-qt3support -qt-gfx-qnx -qt-mouse- qnx -qt-kbd-qnx -no-exceptions -little-endian -nomake 演示 -nomake 示例

“make”需要对环境进行一定的调整并注释掉一个功能,但最终还是奏效了。我已经将字体和 Qt 库复制到在 VMware 中运行的 QNX 上,并创建了一个示例 Qt 应用程序(它只显示一个按钮),我在我的 linux 机器上编译并复制到 QNX。

我有一个小脚本来启动应用程序:

io-display -d vid=0x15adh,did=0x405h
/usr/photon/bin/devi-hid -Pr kbd mouse
./app

它运行应用程序,启用实验性输入驱动程序。使用这个脚本,我可以通过在 Photon 中运行 Qt 应用程序到达某个地方 - 屏幕渲染都搞砸了,但我确实看到了我的 Qt 应用程序。

但是,如果我将 Photon 退出到文本模式,并尝试从那里运行应用程序(使用稍作修改的脚本,具有不同的 vid 和启动图形服务器的值),我只会看到一个空白屏幕。

我对 QNX 和 Qt 完全陌生,所以我现在有点卡住了。我正在尝试了解 Photon 的工作原理以及它设置的环境类型,以查找我在文本模式中可能缺少的内容。但是,我不确定这甚至是一个正确的方向,所以我想我会问好人,以防有人以前经历过这个:)

干杯!

4

1 回答 1

1

您是否尝试在应用后添加“-qws”?它告诉 Qt 应用程序初始化它的窗口系统 (qws)。只有 1 qt 应用程序需要(或可能有)指定的选项。

我还将添加几个环境变量来帮助 Qt 知道在哪里可以找到您的键盘和鼠标。(我也不确定你是否真的需要第一行。)

io-display -d vid=0x15adh,did=0x405h

/usr/photon/bin/devi-hid -Pr kbd mouse

export QWS_DISPLAY=qnx
export QWS_MOUSE_PROTO=qnx
export QWS_KEYBOARD=qnx

./app -qws

顺便说一句,QNX 刚刚发布了用于 QNX 6.5 的 Qt 4.7.1 端口。它可以在Foundry 27 Qt 项目网站上找到。

于 2011-03-11T16:03:50.857 回答