在QNX上运行Qt应用程序

时间:2011-03-09 17:23:26

标签: qt qnx qnx-neutrino

我正在尝试让Qt应用程序在QNX 4.5上运行。我在具有这种配置的linux机器上编译了Qt 4.6.3:

  

./ configure -xplatform unsupported / 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 demos -nomake examples

“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如何工作以及它设置了什么样的环境,以找到我在文本模式中可能缺少的内容。但是,我不确定这是否是一个正确的方向,所以我想我会问好人,以防有人经历过这个问题:)

喝彩!

1 个答案:

答案 0 :(得分:1)

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

我还会添加几个环境变量来帮助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
BTW,QNX刚刚为QNX 6.5发布了Qt 4.7.1的端口。它可以在Foundry 27 Qt Project site上找到。