![CloudCompare 无法启动,并出现错误:“QXcbConnection:无法连接到显示器:0”](https://linux22.com/image/120912/CloudCompare%20%E6%97%A0%E6%B3%95%E5%90%AF%E5%8A%A8%EF%BC%8C%E5%B9%B6%E5%87%BA%E7%8E%B0%E9%94%99%E8%AF%AF%EF%BC%9A%E2%80%9CQXcbConnection%EF%BC%9A%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%88%B0%E6%98%BE%E7%A4%BA%E5%99%A8%EF%BC%9A0%E2%80%9D.png)
上周,CloudCompare 突然停止启动。尝试通过桌面图标启动时,没有任何反应。当尝试通过命令行(例如$ cloudcompare.CloudCompare
)启动时,没有任何反应,并且出现以下错误:
QXcbConnection: Could not connect to display :0
Aborted (core dumped)
尝试使用sudo
/as root 用户启动 CloudCompare 会返回略有不同的错误消息:
mkdir: cannot create directory '/run/user/0': Permission denied
QXcbConnection: Could not connect to display :0
浏览了 Github、这里和其他各种论坛后,这似乎是人们在使用 Qt 和/或 OpenGL 的其他程序中遇到的问题(请参阅1,2,3)。我还意识到这实际上并没有足够的信息来调试问题,因此如果我可以/应该提供任何其他诊断信息,请告诉我,我会添加它。
我的环境
- 操作系统及版本:Ubuntu 14.04 LTS
- 抄送版本:v2.8.1(最新)
- 显卡:英特尔Haswell移动
- Qt版本:5.2.1
答案1
较新的系统在设计上不允许图形应用程序作为 root(这是 Wayland 的事情)。解决方法:
$ xhost si:localuser:root
$ sudo ...your-graphical-app...
恢复默认权限:
$ xhost -si:localuser:root