1

我有一个 BeagleBone - 没有 LCD/显示器。当我尝试使用 startx 时,在控制台中显示 /dev/fb0 不存在。xorg.conf 文件正在使用 fbdev 驱动程序。显然,如果检测到 LCD,则一切正常。

如何设置虚拟显示器以便我可以对其进行 vnc 访问?

4

1 回答 1

1

以为我最好回答这个以供参考。哦,我还拿到了“风滚草”徽章……太好了……

如果没有连接 LCD/DVI cape,则引导不会加载帧缓冲区 (/dev/fb0)。因此,没有 X11 服务器启动。x11vnc 需要一个真正的 X11 服务器才能运行。还有一个程序 xvnc 可以代表您创建一个虚拟 X11/帧缓冲区,但我在 Angstrom 包中看不到它。

所以,我安装了 Xvfb - 并创建了一个虚拟帧缓冲区。安装包

xserver-xorg-xvfb

开始时,请记住(对于像我这样来自 Windows 的新手),它是区分大小写的。创建虚拟 X11 服务器;

Xvfb :1 -screen 0 1024x768x16 &

当你这样做时,你可能会得到这些错误;

(EE) AIGLX error: dlopen of /usr/X11/lib/dri/swrast_dri.so failed (dlopen(/usr/X11/lib/dri/swrast_dri.so, 5): image not found)
(EE) GLX: could not load software renderer

所以,加载包;

mesa-dri-driver-swrast

好的,错误消失了。现在我们可以导出我们的显示器(一个环境变量,这样 Firefox 或您运行的任何 X11 客户端都可以附加到显示器)。

export DISPLAY=:1

加载 Firefox(看的东西)

firefox &

现在我们尝试启动 x11vnc;

x11vnc -display :1 -bg -nopw -xkb

此时,使用此发行版,您将看到有关 XTEST 在构建时未找到/不可用的错误。这里描述了这个问题。

我确保我已经安装了所有正确的库,所以我认为它一定是在 Angstrom 上的一个糟糕的构建。所以,现在要自己构建它。我确保所有必需的库都可​​用;这些是以'-dev'结尾的;默认情况下,它们似乎都可用。我按照这里的说明进行操作。

除了复制行对我来说不太好,所以做你需要做的事情将它复制到 /usr/bin 文件夹。

现在它启动了,XTEST 没有错误,输入正常!

于 2013-07-16T02:32:13.337 回答