微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在不离开X.11环境的情况下开发DirectFB应用程序

我正在尝试为embedded式平台开发一个GUI应用程序,没有任何窗口,我正在用DirectFB做这件事,而且它适合我的需求。

由于我开发的embedded式function并不强大,所以我真的想尝试在自己的Ubuntu桌面上开发。 问题是Framebuffer与X.org冲突,导致我离开整个桌面,closuresX.org只是为了看看我的变化的结果。

有没有一个适合我的需求的好的帧缓冲模拟器? Qt有一个名为QVFb的版本,但它只适用于开发Qt应用程序,DirectFB的VNC后端总是崩溃。

那么,有什么想法?

对话使用分析/热图工具

Mac / Linux和Windows上的Ruby GUI开发

在Windows上开发GUI的最佳语言/工具

WPF快速原型。 查看更改而不运行

运行时更改标签颜色

FTP GUI客户端,用于支持TLS / SSL / SFTP的类Unix平台

Python – 从窗口中获取文本

后台工作线程修改Qt GUI

Mac和Windows原生的GUI框架

Win32 / .net提供的关键“和弦”function是什么?

DirectFB有一个X11后端。

无论如何,$ sudo apt-get会安装Debian和Ubuntu的libdirectfb-extra#

$ cat〜/ .directfbrc

系统= X11

力窗

另外,DirectFB有一个SDL后端,而SDL有一个X11后端。 此外,SDL有一个GGI后端,GGI有一个X后端。 这有点迂回,但它应该工作:)

我用它来测试它

$ SDL_VIDEODRIVER = directfb ffplay some_movie.avi

并获得了一个不错的640×480窗口与媒体播放和DirectFB处理分层和输入,所以我相信这个工程。

以前的三个答案都是很好的建议。 我建议尝试ephemient的答案,因为这是最简单的。 有关设置.directfbrc文件的更多详细信息,请查阅“man directfbrc”。

另一种可能是从X切换到另一个虚拟终端(使用CTRL + ALT + F1),运行directfb程序,然后切换回X(使用CTRL + ALT + F7)。

我开始使用Ephemient的解决方案在一个chroot环境中运行DirectFB应用程序(目标文件系统作为buildroot的一个礼貌),另外还有一个在当前X的窗口中运行的单独的X环境。

$ Xnest -ac :1 & $ cd $TARGET_DIR # into the target file system root $ disPLAY=:1 sudo chroot . usr/bin/df_neo

这样,你不仅可以保证你的directfb安装是正确的,而且所有必需的依赖项都安装在chroot的文件系统中。

您可以使用Moblin Image Creator创建Moblin的磁盘映像,然后可以像QEMU一样在VM内运行。 然后,您可以在虚拟机内测试您的DirectFB应用程序。

你可以在你的Ubuntu桌面上开发(即编辑和编译)你的应用程序,然后在你打算运行的嵌入式平台上测试你的应用程序。

如果嵌入式平台支持联网,则可以通过直接从NFS共享运行应用程序来缩短编辑 – 编译 – 测试循环的时间。

以下是qemu和directFB的一个很好的例子:

http://free-electrons.com/community/demos/qemu-arm-directfb/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐