问一个Ubuntu上跑QT程序的问题

uniquez_hsu 2012-04-26 10:48:52
最近接手了一个项目,在一台TI DM8148(ARM+DSP)的板子上,跑的是Ubuntu的桌面系统,现在要用QT程序实现某一个登陆界面,用户登录后弹出一个X11的窗口来实现远程虚拟桌面控制。

现在问题来了,我编译好的QT程序,移到单板上,无论是在串口上还是在Ubuntu桌面的超级终端上运行,都弹不出QT的那个窗口,但是我程序跑的打印信息能出来。

因为之前只做过一个QT的项目,并且也不是跑在Ubuntu桌面系统上的,所以完全没有思路该怎么做,同事说可能是两个GUI,而LINUX不支持同时显示两个GUI造成的,那我就不明白那些手机上的程序怎么弹出应用程序来的

不是很明白这里面的原理,有明白的DX麻烦说一声,该怎么解决这个问题。

分不多,40分奉上,小的先谢过了。。。
...全文
589 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
cloudspider 2013-05-08
  • 打赏
  • 举报
回复
时阁一年,我遇到同样的问题,你最终是怎么解的,先谢谢啦。。。
sno_guo 2012-05-27
  • 打赏
  • 举报
回复
我也很想用DM8148啊,呵呵,先mark下,等以后回来看!
dotmonkey 2012-05-13
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

引用 9 楼 的回复:

有了ubuntu就应该apt-get install,自己编译多麻烦。。。


郁闷的就是在这个地方,我们编译服务器不能上外网,也没有X11界面。。。

只能在上面编译好了,然后拿到我那块板子的Xwindow上跑。。。
[/Quote]
那就下deb包来安装啊,真是汗。。。
uniquez_hsu 2012-05-02
  • 打赏
  • 举报
回复
sigh...搞不定了,求高人来解答。。。是否是我没编译出qvfb的原因
uniquez_hsu 2012-05-01
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

有了ubuntu就应该apt-get install,自己编译多麻烦。。。
[/Quote]

郁闷的就是在这个地方,我们编译服务器不能上外网,也没有X11界面。。。

只能在上面编译好了,然后拿到我那块板子的Xwindow上跑。。。
uniquez_hsu 2012-05-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

不知到你原来那个ubuntu是什么版本,下面的显示控制是否是真的是x11。
如果不能找到真正的输出,先试下之前-qt-gfx-linuxfb版本编译的程序,启动qws之前export QWS_DISPLAY="LinuxFb:/dev/*",具体应该是/dev/fb多少或者是/dev/graphics,要看你板子的具体情况。
如果不行在用-qt-gfx-qvfb编译出的版本 export Q……
[/Quote]

今天5.1跑到公司加班了,但问题还是没解决,说说情况
我编了两个版本,一个-qt-gfx-linuxfb,-no-gfx-qvfb,一个-no-gfx-linuxfb,-qt-gfx-qvfb
两个编出来的库,都必须加-qws才能运行
第一个加export QWS_DISPLAY="LinuxFb:/dev/fb0",运行报: linux fb0 cannot connect
而不加直接运行,能跑起来,但屏幕没有QT窗口的输出。

第二个运行报: QVFB:0 cannot connect

貌似都是找不到这个帧缓冲或者虚拟帧缓冲设备引起的,但又不知道该怎么改。。


PS:另外还有个奇怪的是,我在.configure中加了 -qvfb和-qt-gfx-qvfb,但编出来的/bin/下面还是没有qvfb这个程序,需要自己手工编?

望能给点提示,也许真的错在我的编译库的环节上。。。
念茜 2012-04-28
  • 打赏
  • 举报
回复
不知到你原来那个ubuntu是什么版本,下面的显示控制是否是真的是x11。
如果不能找到真正的输出,先试下之前-qt-gfx-linuxfb版本编译的程序,启动qws之前export QWS_DISPLAY="LinuxFb:/dev/*",具体应该是/dev/fb多少或者是/dev/graphics,要看你板子的具体情况。
如果不行在用-qt-gfx-qvfb编译出的版本 export QWS_DISPLAY=QVFb:0
两种都试试,希望可以奏效
uniquez_hsu 2012-04-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

用 -qt-gfx-qvfb
不要用 -qt-gfx-linuxfb
[/Quote]
手机回复下,我昨晚按你的方法重新编译了板子的qt库,今天来跑程序,仍然需要加-qws程序才能运行。且运行会报一个这样的错误
:driver cannot connect
这下我更傻眼了,不知道该怎么办了,现在新公司不能回复帖子的,只能手机来回复。如果知道怎么解决望指引下,感激涕零…
dotmonkey 2012-04-28
  • 打赏
  • 举报
回复
有了ubuntu就应该apt-get install,自己编译多麻烦。。。
uniquez_hsu 2012-04-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]

不知到你原来那个ubuntu是什么版本,下面的显示控制是否是真的是x11。
如果不能找到真正的输出,先试下之前-qt-gfx-linuxfb版本编译的程序,启动qws之前export QWS_DISPLAY="LinuxFb:/dev/*",具体应该是/dev/fb多少或者是/dev/graphics,要看你板子的具体情况。
如果不行在用-qt-gfx-qvfb编译出的版本 export Q……
[/Quote]
我的ubuntu是11.04版本的,我在板子的dev下找到了fb0这个文件
我想应该问题能解决的,手机很多程序不也是在一个嵌入式的桌面系统下跑的qt吗?我下午重新编译下qt库试试
念茜 2012-04-27
  • 打赏
  • 举报
回复
三个字:X11
你编译Qt库的时候,configure选项 不要选linuxFB了,选x11。
而且启动程序的时候,不需要-qws了。


念茜 2012-04-27
  • 打赏
  • 举报
回复
用 -qt-gfx-qvfb
不要用 -qt-gfx-linuxfb
uniquez_hsu 2012-04-27
  • 打赏
  • 举报
回复
用手机顶下,急啊…
uniquez_hsu 2012-04-27
  • 打赏
  • 举报
回复
用手机顶下,急啊…
uniquez_hsu 2012-04-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

三个字:X11
你编译Qt库的时候,configure选项 不要选linuxFB了,选x11。
而且启动程序的时候,不需要-qws了。
[/Quote]

公司无法回复帖子,郁闷,谢谢楼上的美女的回答,你的blog我经常去看,赞
回到这个问题,我在-qt-gfx-后面的参数中没有找到x11这个选项,有linuxfb一个选项,请问下我该怎么设置?

16,173

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧