Ich bin daran interessiert, eine X11-Sitzung über SSH weiterzuleiten, um einen Remote-Prozess zu starten, der OpenGL verwendet (speziell Gazebo für alle, die damit vertraut sind).
Das Problem, auf das ich stoße, ist, dass der Pavillon aufgrund einer Nichtübereinstimmung der Grafikkarten abstürzt. Es können keine "NV-GLX" -Erweiterungen gefunden werden. Die genaue Fehlerausgabe:
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
Auf dem Remote-Computer wird eine NVIDIA-Karte ausgeführt, und auf meinem lokalen Computer wird eine AMD-Karte verwendet.
Ich habe die X11-Weiterleitung von Pavillons zwischen zwei Computern mit NVIDIA-Karten getestet. Es funktioniert gut.
Soweit ich das beurteilen kann, scheint eines von drei Dingen vor sich zu gehen:
- Ich mache etwas falsch,
- Was ich tun möchte, ist unmöglich,
- Gazebo arbeitet nicht agnostisch mit verzweigten Codepfaden für unterschiedliche Hardware. Was auch immer Ihr System aussieht, wenn es erstellt wird, erhalten Sie.
Auf dem Remotecomputer wird Ubuntu ausgeführt, und auf meinem lokalen Computer läuft Mac 10.8.2. Ich weiß bereits, dass ich die x11-Weiterleitung für den normalen Gebrauch richtig eingerichtet habe, da ich Dinge wie xclock in XQuartz problemlos öffnen kann. Die Lösung (falls vorhanden) funktioniert vorzugsweise auch für andere Betriebssysteme, einschließlich Windows über WinSCP.