我試圖運行一個需要 GLX 版本 1.3 才能運行的 C++ 程式。當我直接登入 Fedora 計算機並透過鍵入命令檢查 GLX 版本時,glxinfo | grep "version"
我發現 GLX 版本是 1.4。但是,當我使用 PuTTY 從 Windows 8 筆記型電腦上以同一用戶身份透過 SSH 連接到同一台電腦時,輸入相同的命令後我發現 GLX 版本是 1.2。
為什麼 Linux 電腦上的 GLX 版本取決於我是否使用 SSH 登入電腦?此外,有沒有辦法可以透過 SSH 使用 Fedora 電腦上(似乎)存在的 GLX 版本 1.4?
我對上述問題的答案的直覺有限,但是當我問比我更有 Linux 知識的人時,他建議這可能與直接登錄時運行的某種配置文件有關,而不是運行當使用SSH 時- 這個想法是理論上計算機上可能存在許多版本的GLX,但在兩種情況下選擇的版本是不同的。我如何驗證這就是原因?更重要的是,當我使用 SSH 時,如何選擇較新的版本?
順便說一句,我在我的 Windows 電腦上設定了 X11 轉送(使用 Xming)並且工作正常,但在我看來,給出的 GLX 版本的輸出glxinfo | grep "version"
似乎與此無關。
我也不確定這是否重要,但我首先透過 SSH 連接到遠端存取伺服器,然後從那裡ssh -Y
透過 SSH 連接到我知道直接登入時擁有 GLX 版本 1.4 的電腦。
感謝您的幫忙!
答案1
glxinfo
報告變數指向的 X 伺服器的功能DISPLAY
。當您直接登入 Fedora 工作站時,這就是您的 Fedora X 伺服器。當您使用帶有 X 轉發的 PuTTY 登入時,即為 Xming。這就是為什麼你會得到不同的結果。
重點是確定正在顯示的系統的功能,而不是確定正在執行程式的系統的功能。