오류: QOpenGLShader: 셰이더를 생성할 수 없습니다 - SSH를 통해 실행할 때

오류: QOpenGLShader: 셰이더를 생성할 수 없습니다 - SSH를 통해 실행할 때

내 컴퓨터에서:

$ cat /etc/issue && uname -a
Ubuntu 14.04.1 LTS \n \l

Linux abc-pc 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Qt 5.4와 QtCreator 3.3.0을 사용하고 있습니다.

나는 이것에 대해 읽었습니다.OpenGL 오류, 하지만 이것이 나에게도 적용되는지 확실하지 않습니다.

프로그램은 내 컴퓨터에서 완벽하게 실행되지만 동료가 ssh자신의 컴퓨터에서 내 컴퓨터의 동일한 프로그램을 실행했는데 그의 컴퓨터에 다음 오류가 표시되었습니다.

실행은 ssh그가 실제로 내 컴퓨터에서 작업하고 있다는 것을 의미하는데, 나는 오류를 얻지 못하는데 왜 그 사람에게는 이러한 오류가 발생합니까?

libGL error: failed to load driver: swrast
Connected to  "xyz"
QOpenGLShader: could not create shader
QOpenGLShaderProgram: could not create shader program
QOpenGLShader: could not create shader
QOpenGLShaderProgram::uniformLocation( imageTexture ): shader program is not linked
QOpenGLShaderProgram: could not create shader program
QOpenGLShader: could not create shader
QOpenGLShader: could not create shader
shader compilation failed: 
""
QOpenGLShaderProgram::uniformLocation( matrix ): shader program is not linked
QOpenGLShaderProgram::uniformLocation( opacity ): shader program is not linked
QOpenGLShaderProgram: could not create shader program
QOpenGLShader: could not create shader
QOpenGLShader: could not create shader
shader compilation failed: 
""
QOpenGLShaderProgram::uniformLocation( matrix ): shader program is not linked
QOpenGLShaderProgram::uniformLocation( opacity ): shader program is not linked
QOpenGLShaderProgram::uniformLocation( pixelSize ): shader program is not linked
QOpenGLShaderProgram: could not create shader program
QOpenGLShader: could not create shader
QOpenGLShader: could not create shader
shader compilation failed: 

답변1

ssh -X프로그램을 시작하기 전, 접속을 시도하고 로그인 후 명령어를 실행해 보세요 .DISPLAY=:0

$ ssh -X YOURCOMP
...
$ DISPLAY=:0
$ ./[run gl program]

대체로 원격 컴퓨터의 그래픽 드라이버에 대한 액세스를 제공할 수 있습니다. 예를 들어, 방금 실행한 경우 , 및 (첫 번째 링크에 표시된 대로)을 모두 수행하지 않는 한 glxinfo | grep OpenGL으로 예상한 결과를 얻을 수 없습니다 .sshssh -XDISPLAY=:0

glxinfo에서 다운로드 할 수 있습니다 mesa-utils.


glxgears또한 테스트를 위한 멋진 GL 프로그램이 패키지에 제공됩니다 mesa-utils. 이것이 작동하는데 프로그램이 작동하지 않는다면 문제는 다른 원인으로 인해 발생한 것일 수 있습니다.

관련 정보