我已经构建了一个简洁的测试应用程序,其中包含两个ClutterText actor,可以显示两个单词。当我从gnome中运行它但是使用xinit my_app_binary
从tty(不是gnome-terminal或xterm)运行它时,它运行正常我收到错误:
failed to create drawable
Unable to initialize Clutter: Unable to select the newly created GLX context
Window manager error: Unable to initialize Clutter
如果我从同一个tty运行xinit gnome-terminal
一切正常,gnome-terminal会显示在黑屏中。我想用我的应用程序做同样的事情。
我能做些什么来克服这个错误吗?
以上所有都在Linux Mint 12中测试过。正常启动后我切换到tty(ALT-F1)并停止lightdm(sudo /etc/init.d/lightdm stop)。
谢谢!
编辑:以root身份运行一切正常,所以问题是:如何以普通用户身份运行?答案 0 :(得分:0)
请务必设置DISPLAY-var - 将其添加到命令前面
DISPLAY=:0.0 /path/to/myapp
有时这是一个访问权限问题 - 应该从启动X-server的用户启动应用程序
su user-started-x -c 'DISPLAY=:0.0 /path/to/myapp'