2013-07-08 42 views
1

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

如何设置虚拟显示器,以便我可以vnc?

回答

1

以为我最好回答这个以供参考。哦,我还买了'Tumbleweed'徽章......太好了......

如果没有连接LCD/DVI斗篷,那么引导不会加载帧缓冲区(/ 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 & 

现在,我们尝试开始x11vnc;

x11vnc -display :1 -bg -nopw -xkb 

在这一点上,与此发行版,你会看到大约XTEST错误没有被发现/不可用当它被建立。 Here描述了这个问题。

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

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

现在开始,并且没有关于XTEST的错误,并且输入有效!