上周,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