web-dev-qa-db-ja.com

Ubuntu 14.04 LTSでnvidia gfxカードを使用して間接GLXコンテキスト(+ iglx)を有効にする方法

私は中央の場所でQt-software-developmentのlinux-Hostを実行しています。

私のWindowsボックスでは、XmingをローカルXサーバーとして使用し、PuTTYを使用してそのlinux-Hostに接続します。この構成では、linux-HostですべてのX(xclock、xterm)およびGLX(qtcreator、gxlinfo、glxgears ...)プログラムを使用できます。

私のメインワークステーションは、nvidia gfxカードを搭載したubuntu 14.04 LTSです。 「ssh -p port#-YC my.dev.Host.com」を使用して、ubuntu-systemでlinux-Hostに接続すると、useすべてのXプログラム(xclock、xterm)プログラムが、Iは使用できませんGLXプログラム(qtcreator、gxlinfo、glxgears ...)。

これまでのところ、私は 学習済み これは、Xサーバーがバージョン1.16以降のデフォルトで間接GLXコンテキストをサポートしていないためです。

だから私の質問は:ubuntu 14.04 LTSインストールで間接GLXコンテキスト(Xサーバーとnvididaドライバー)を有効にして、Xサーバーから期待どおりに動作させるにはどうすればいいですか?.

助けてくれてありがとう!

cmks

以下がglxgearsの出力です。おそらく役立つでしょう:

[email protected]:~# LIBGL_DEBUG=verbose glxgears 
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /root/.drirc: No such file or directory.
libGL: Can't open configuration file /root/.drirc: No such file or directory.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  35
  Current serial number in output stream:  37
9
cmks

'ssh -X'を介していくつかのGLアプリケーションを実行するときに同様の問題が発生し、/ usr/share/lightdm/lightdm.conf.d/50のxserver-commandに「+ iglx」を追加して解決しました。 -xserver-command.conf。

[SeatDefaults]
# Dump core
xserver-command=X -core +iglx

その後、再起動するか、Ctrl-Alt-F1、ログイン、および「Sudo service lightdm restart」のいずれかを実行します。

これがお役に立てば幸いです!

8
Justin

オプションを追加する別の(および表示マネージャーに依存しない)方法は、/ etc/X11/xorg.confに次のセクションを追加することです。

Section "ServerFlags"
    Option "IndirectGLX" "on"
EndSection
4
user652430

ssh -Xを介してカスタムOpenGLプログラムを実行すると、同じ問題が発生していました。上記の解決策はわずかな修正で機能しました

Section "ServerFlags"  
    Option "AllowIndirectGLX" "on"  
    Option "IndirectGLX" "on"  
EndSection  

これは、NVIDIA GTX 1070 GPUとaptを介してインストールされたNVIDIAバイナリドライバーでkubuntu-desktopを実行するubuntu 16.04サーバーで機能しました。

0
Triradiate