OpenGLを使用するリモートプロセスを起動するために、SSHを介してX11セッションを転送することに興味があります(具体的には、馴染みのある人ならgazeboです)。
私が直面していると思われる問題は、グラフィックカードの不一致によりガゼボがクラッシュすることです。「NV-GLX」拡張機能が見つかりません。正確なエラー出力:
Xlib: extension "NV-GLX" missing on display "localhost:10.0".
Xlib: extension "NV-GLX" missing on display "localhost:10.0".
X Error of failed request: GLXUnsupportedPrivateRequest
Major opcode of failed request: 149 (GLX)
Minor opcode of failed request: 16 (X_GLXVendorPrivate)
Serial number of failed request: 24
Current serial number in output stream: 25
リモートマシンはNVIDIAカードで実行されており、ローカルマシンはAMDカードを使用しています。
NVIDIAカードを搭載した2台のマシン間でガゼボのX11転送をテストしました。それはうまく機能します。
私が知る限り、次の3つのうちの1つが起こっているようです。
- 私は何か間違ったことをしている、
- 私がやりたいことは不可能です
- Gazeboは、異なるハードウェア用の分岐コードパスを使用した不可知論的な方法では構築しません。システムが構築されたときにどのように見えるかはあなたが得るものです。
リモートマシンはUbuntuを実行しており、私のローカルマシンは10.8.2を実行しているMacです。XclockのようなものをXQuartzでうまく開くことができるので、x11転送が通常の使用のために適切に設定されていることをすでに知っています。解決策(存在する場合)は、Windows over WinSCPを含む他のOSでも機能することが望ましいでしょう。