3

构建系统:

  • Qt Creator 2.7.2 基于 Qt 5.1.0(32 位)于 2013 年 7 月 2 日构建
  • Qt 5.1.0 MSVC2010 32 位(角度)
  • 适用于 Windows 7 的 Microsoft Windows SDK (7.1.7600.0.30514)

环境:

  • 视窗 7 (VMWare)

问题: 我收到的新 Qt Quick 2 应用程序(内置元素)项目将无法运行:

class QWindowsEGLStaticContext *__cdecl QWindowsEGLStaticContext::create(void): Could not initialize egl display: error 12289

QOpenGLFunctions created with non-current context 
List of attribute names is either too long or not null-terminated.
Maximum number of attributes on this hardware is 0.
Vertex shader:
attribute highp vec4 vertexCoord;              
attribute highp vec4 vertexColor;              
uniform highp mat4 matrix;                     
uniform highp float opacity;                   
varying lowp vec4 color;                       
void main() {                                  
    gl_Position = matrix * vertexCoord;        
    color = vertexColor * opacity;             
}
Fragment shader:
varying lowp vec4 color;                       
void main() {                                  
    gl_FragColor = color;                      
}

我相信这是因为它在虚拟机上运行。

我已经尝试过 Qt 的 ANGLE 和 OpenGL 版本,但都失败了。我预计 OpenGL 会失败,因为我不相信我们的 VMWare 基础架构具有兼容的视频驱动程序。

有没有其他人经历过这个并设法解决它?

谢谢,马库斯

4

3 回答 3

2

我遇到了同样的问题,我通过在 vmplayer conf 中激活“加速 3D 图形”来解决它。之后,我没有错误消息,但应用程序仍然无法运行:它显示一个空白屏幕。

于 2013-10-10T10:11:50.883 回答
0

正如 Friedemann Kleint 对QTBUG- 31611 的评论所述,此问题是由于DirectX End-User Runtime提供的 d3dcompiler 缺失所致。我有同样的问题(一个空白窗口),安装 DirectX 并重新启动系统,已经解决了。

于 2014-04-09T15:36:01.793 回答
0

安装NVIDIA图形加速+显卡相关的NVIDIA软件驱动,重启PC后即可解决问题

于 2016-12-13T16:24:50.823 回答