什么是可以显示OpenGL版本的终端命令?

所以我想知道哪个是我的OpenGL版本。 我可以通过SSH访问Ubuntu。 我应该执行哪个命令?

要检查OpenGL版本,

glxinfo | grep "OpenGL version"

您将获得如下输出,

 glxinfo | grep "OpenGL version" OpenGL version string: 1.4 (2.1 Mesa 7.7.1) 

编辑:

考虑到核心和compat配置文件之间的差异,以及各种GLSL和GLES版本,您可能会更好地使用现代OpenGL,仅仅为了“版本”而不是“OpenGL版本”。

 glxinfo | grep 'version' server glx version string: 1.4 client glx version string: 1.4 GLX version: 1.4 Max core profile version: 4.1 Max compat profile version: 3.0 Max GLES1 profile version: 1.1 Max GLES[23] profile version: 3.0 OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.1.2 OpenGL core profile shading language version string: 4.10 OpenGL version string: 3.0 Mesa 11.1.2 OpenGL shading language version string: 1.30 OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.1.2 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00 

请注意,实际版本由“核心配置文件版本”(4.1)表示,而“OpenGL版本”表示为3.0。

取决于你在寻找什么:

Open GL实施

您可以使用mesa-utils包中的glxinfo:

 sudo apt-get install mesa-utils glxinfo | grep "OpenGL version" 

发展图书馆

这取决于一点,

 dpkg -s [package name] 

会告诉你任何包装的版本信息等。

但是你需要知道你感兴趣的opengl的具体部分/实现等。我怀疑,对你而言,它将是:

 dpkg -s libglu1-mesa 

注意:我在以后添加了这个答案,因为现有的答案都没有解决关于ssh的关键问题,并且会给遵循上述说明的人带来误导性的价值

  1. sshing使用X-forwarding 。 这是通过ssh -X启用的。

    没有x-forwarding:

     $ ssh MYCOMP $ glxinfo Error: unable to open display 

    使用x-forwarding:

     $ ssh -X MYCOMP $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce 8800 GT/PCIe/SSE2 OpenGL version string: 2.1.2 NVIDIA 310.44 OpenGL shading language version string: 1.20 NVIDIA via Cg compiler OpenGL extensions: 

    我应该在这里注意,这是错误的显卡错误的版本号 。 (根据你的期望,’错了’)。

  2. DISPLAY变量设置为:0 ,以允许从远程会话访问图形卡的驱动程序。

     $ ssh -X MYCOMP $ DISPLAY=:0 $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GTX 550 Ti/PCIe/SSE2 OpenGL version string: 4.3.0 NVIDIA 310.14 OpenGL shading language version string: 4.30 NVIDIA via Cg compiler OpenGL extensions: 

    这将列出正确的图形卡(远程计算机上的图形卡)以及正确的版本号。

对于那些只想要版本号的人,例如在程序参数中给出它,你可以使用

 $ glxinfo | awk '/OpenGL version/ {print $4}' 3.0 

注意: optirun glxinfo | awk '/OpenGL version/ {print $4}' optirun glxinfo | awk '/OpenGL version/ {print $4}'如果你使用大黄蜂

您可以通过运行以下命令来获取信息:

 DISPLAY=:0 glxgears -info | grep GL_VERSION 

回声如下:

 GL_VERSION = 3.3.0 NVIDIA 340.93 

如果出现问题,也可以在没有DISPLAY=:0的情况下尝试。 glxgears命令位于mesa-utils包中,可以安装:

 sudo apt-get install mesa-utils 

如果您具有运行Ubuntu 16.04的远程计算机的root访问权限,则可以运行

 user@local_computer:~$ ssh root@remote.example.com root@remote:~# export DISPLAY=:0 root@remote:~# export XAUTHORITY=/var/lib/lightdm/.Xauthority root@remote:~# glxinfo | grep -i "OpenGL version" OpenGL version string: 3.0 Mesa 11.2.0 

Ubuntu 17.10,打开终端和类型;

 glxinfo | grep "OpenGL version" 

你会收到这样的东西;

 OpenGL version string: 3.0 Mesa 17.2.2 

如果收到程序glxinfo不可用的错误,则需要输入命令

 sudo apt install mesa-utils