我试图运行一个需要 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。这就是为什么你会得到不同的结果。
重点是确定正在显示的系统的功能,而不是确定正在运行程序的系统的功能。