我正在尝试为嵌入式平台开发一个GUI应用程序,没有任何窗口,我用DirectFB来做这件事,它非常适合我的需要。由于我开发的嵌入式系统并不是很强大,我真的很想尝试在我自己的Ubuntu桌面上开发。问题是Framebuffer与www.example.com冲突X.org导致我离开整个桌面,并关闭X.org,只是为了查看我的更改结果。有没有适合我的帧缓冲区模拟器?Qt有一个,叫做QVFb,但是它只适用于开发Qt应用程序,并且DirectFB的VNC后端总是崩溃。所以,有什么想法吗?
yzuktlbb1#
DirectFB有一个X11后端。
$ sudo apt-get install libdirectfb-extra # for Debian and Ubuntu, anyhow $ cat ~/.directfbrc system=x11 force-windowed
此外,DirectFB有一个SDL后端,SDL有一个X11后端。此外,SDL有一个GGI后端,GGI有一个X后端。这有点迂回,但应该可以工作:)我用
$ SDL_VIDEODRIVER=directfb ffplay some_movie.avi
得到了一个不错的640x480窗口,带有媒体播放和DirectFB处理分层和输入,所以我相信这是可行的。
qq24tv8q2#
前面的三个答案都是很好的建议。我建议尝试一下ephemient的答案,因为它是最简单的。关于设置.directfbrc文件的更多细节,请查看“man directfbrc”。另一种可能性是从X切换到另一个虚拟终端(使用CTRL+ALT+F1),运行directfb程序,然后切换回X(使用CTRL+ALT+F7)。
cczfrluj3#
我开始使用ephement的解决方案在chroot环境(目标文件系统是buildroot提供的)中运行DirectFB应用程序,除了Xnest之外,Xnest是一个单独的X环境,运行在当前X的窗口中。
$ Xnest -ac :1 & $ cd $TARGET_DIR # into the target file system root $ DISPLAY=:1 sudo chroot . usr/bin/df_neo
这样,您不仅可以确保directfb安装是正确的,还可以确保所有必需的依赖项都安装在chroot文件系统中。
jtw3ybtb4#
您可以使用Moblin Image Creator创建Moblin的磁盘映像,然后在QEMU之类的虚拟机中运行该映像,然后在虚拟机中测试DirectFB应用程序。
92dk7w1h5#
您可以在Ubuntu桌面上开发(即编辑和编译)应用程序,并在其预期运行的嵌入式平台上测试应用程序。如果嵌入式平台支持网络,您可以通过直接从NFS共享运行应用程序来缩短编辑-编译-测试循环的长度。
5m1hhzi46#
下面是一个使用qemu和directFB的好例子:
6条答案
按热度按时间yzuktlbb1#
DirectFB有一个X11后端。
此外,DirectFB有一个SDL后端,SDL有一个X11后端。此外,SDL有一个GGI后端,GGI有一个X后端。这有点迂回,但应该可以工作:)
我用
得到了一个不错的640x480窗口,带有媒体播放和DirectFB处理分层和输入,所以我相信这是可行的。
qq24tv8q2#
前面的三个答案都是很好的建议。我建议尝试一下ephemient的答案,因为它是最简单的。关于设置.directfbrc文件的更多细节,请查看“man directfbrc”。
另一种可能性是从X切换到另一个虚拟终端(使用CTRL+ALT+F1),运行directfb程序,然后切换回X(使用CTRL+ALT+F7)。
cczfrluj3#
我开始使用ephement的解决方案在chroot环境(目标文件系统是buildroot提供的)中运行DirectFB应用程序,除了Xnest之外,Xnest是一个单独的X环境,运行在当前X的窗口中。
这样,您不仅可以确保directfb安装是正确的,还可以确保所有必需的依赖项都安装在chroot文件系统中。
jtw3ybtb4#
您可以使用Moblin Image Creator创建Moblin的磁盘映像,然后在QEMU之类的虚拟机中运行该映像,然后在虚拟机中测试DirectFB应用程序。
92dk7w1h5#
您可以在Ubuntu桌面上开发(即编辑和编译)应用程序,并在其预期运行的嵌入式平台上测试应用程序。
如果嵌入式平台支持网络,您可以通过直接从NFS共享运行应用程序来缩短编辑-编译-测试循环的长度。
5m1hhzi46#
下面是一个使用qemu和directFB的好例子: