如何在帧缓冲区中运行应用程序?

如何在帧缓冲区中运行应用程序?

如果我可以从控制台看一部电影(比如这个帖子),那么如何从控制台使用 Firefox 等其他应用程序呢?我正在寻找可以在 Ubuntu、Fedora 或 OpenBSD 中运行的东西。

答案1

一般答案是:你不能。帧缓冲区是一种与 X 服务器创建的图形接口不同(您可以说:更“基本”)的方式。仅适用于该位置的应用程序设计的利用帧缓冲区就可以做到这一点。并且包含此类支持的图形应用程序并不多 - 帧缓冲区主要用于文本模式(控制台)应用程序。 Firefox 是一个典型的应用程序示例,它被设计为在 Xorg 服务器上运行(就像大多数图形应用程序一样)。

但是,如果您真的感兴趣,有一些项目使用帧缓冲区作为更高级的图形应用程序的基础。可能最先进的可以在下面找到DirectFB 项目页面。这其实包含一些有关在帧缓冲模式下(即在 DirectFB 环境下)运行 Firefox 的信息。但请注意,这只是一个实验性的港口Firefox - 非常旧,显然在 2008 年 7 月左右就被废弃了。

答案2

网上冲浪

SDL 是一个著名的支持帧缓冲区的库。

有了像 AntTweakBar 这样的库,理论上你可以在其中编写任何 UI(尽管我怀疑性能很难优化)。

所以人们已经做了一个基于SDL的运行在framebuffer上的浏览器:http://www.netsurf-browser.org/about/

有一个 Ubuntu 软件包,但我还没有让它工作:https://askubuntu.com/questions/817937/how-to-run-netsurf-fb-fails-with-unable-to-set-video-could-not-set-console-s

vlc是另一个在帧缓冲区上运行的有趣软件:https://askubuntu.com/a/550014/52975这在 Ubuntu 16.04 上确实对我有用。

这个答案对依赖关系有很好的分析:https://unix.stackexchange.com/a/177209/32558并且还指向这个人的页面:http://litcave.rudi.ir/其中有一些更核心的 fbdev 软件,例如 PDF 阅读器。

GTK+ 似乎有一个帧缓冲区分支:http://www.gtk.org/api/2.6/gtk/gtk-framebuffer.html和Qt官方支持:http://doc.qt.io/qt-4.8/qvfb.html(它被诺基亚用于嵌入式)。

相关内容