Vraag Wat is een terminalopdracht die de OpenGL-versie kan weergeven?


Dus ik wil weten wat mijn OpenGL-versie is. Ik heb toegang tot Ubuntu via SSH. Welk commando voer ik uit?


83
2018-06-05 12:20


oorsprong




antwoorden:


Om de OpenGL-versie te controleren,

glxinfo | grep "OpenGL version"

Je krijgt de uitvoer als volgt,

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

Bewerk:

Misschien heb je meer geluk met moderne OpenGL die gewoon grepping voor "versie" in plaats van "OpenGL-versie" gezien de verschillen tussen de kern- en compatibiliteitsprofielen, evenals de verschillende GLSL- en GLES-versies:

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

Merk op dat de werkelijke versie wordt gepresenteerd door de "kernprofielversie" (4.1), terwijl de "OpenGL-versie" wordt gepresenteerd als 3.0.


105
2018-06-05 14:42



Voorzichtig! glxinfo vertelt je de versie van OpenGL gebruikt door je DISPLAY, niet de externe machine! Het zal u echter de GLX-versie van de externe machine (de "client" -bits) vertellen. - Rich
En als u de juiste kaart krijgt maar de verkeerde OpenGL-versie, zijn het waarschijnlijk de nouveau / open source-stuurprogramma's - maak ze zwart of verwijder ze. - Arcane Engineer
Ik heb enkele bewerkingen doorgevoerd zodat betere informatie kan worden gevonden met moderne OpenGL-versies die meerdere profielen presenteren, vooral omdat dit het topresultaat is van een google-zoekopdracht voor "Linux check opengl-versie". - Taywee
Opmerking: in Ubuntu 16.04, glxinfo is standaard niet beschikbaar. Om het te kunnen gebruiken, moet je het installeren mesa-utils pakket. - starleaf1


afhankelijk van wat je zoekt:

Open GL-implementatie

U kunt glxinfo gebruiken, uit het mesa-utils-pakket:

sudo apt-get install mesa-utils

glxinfo | grep "OpenGL version"

Ontwikkeling bibliotheken

dit hangt een beetje af,

dpkg -s [package name]

zal u versie-informatie, enz. van elk pakket vertellen.

maar je moet weten welk specifieke deel / implementatie, enz. van opengl je interesseert. Ik vermoed dat het voor jou zal zijn:

dpkg -s libglu1-mesa

17
2018-06-05 12:45





Notitie: Ik heb dit antwoord op een later tijdstip toegevoegd, omdat geen van de bestaande antwoorden een cruciale aspect heeft met betrekking tot ssh, en zal geven misleidende waarden voor degenen die de bovenstaande instructies volgen.

  1. Gebruik X-forwarding bij het ssh-ing. Dit is ingeschakeld met ssh -X.

    Zonder x-forwarding:

    $ ssh MYCOMP
    $ glxinfo
    Error: unable to open display
    

    Met 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:
    

    Ik moet hier opmerken dat dit zowel het verkeerde grafische kaart, en verkeerde versienummers. ('Fout' in termen van wat je zou verwachten).

  2. set DISPLAY variabele naar :0, om toegang te krijgen tot het stuurprogramma van de grafische kaart vanuit de externe sessie.

    $ 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:
    

    Hierin staat de juiste grafische kaart (die op de externe computer) en de juiste versienummers.


13
2018-05-13 12:25



Voor mij was dat zo localhost:10.0, helaas resulterend in X Error of failed request: GLXBadContext. - Blauhirn


Voor degenen die alleen het versienummer willen, bijvoorbeeld om het een argument van een programma te geven, kun je gebruiken

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

Notitie: optirun glxinfo | awk '/OpenGL version/ {print $4}' als je hommel gebruikt


4
2017-12-07 13:18





U kunt de informatie verkrijgen door het volgende commando uit te voeren:

DISPLAY=:0 glxgears -info | grep GL_VERSION

Dit echoot iets als:

GL_VERSION    = 3.3.0 NVIDIA 340.93

Probeer ook zonder DISPLAY=:0 in geval van problemen. Het bevel glxgears is in mesa-utils pakket dat kan worden geïnstalleerd met:

sudo apt-get install mesa-utils

1
2017-11-27 07:29



Dit werk voor mij. Freescale iMX6 Yocto poky 1.6.2. - Jiu


Als u root-toegang hebt tot een externe computer waarop Ubuntu 16.04 draait, je zou kunnen rennen

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

0
2017-08-26 07:05





Ubuntu 17.10, open terminal en type;

glxinfo | grep "OpenGL version"

Je krijgt zoiets als dit;

OpenGL version string: 3.0 Mesa 17.2.2

Als u een foutmelding ontvangt dat het programma glxinfo niet beschikbaar is, moet u de opdracht invoeren

sudo apt install mesa-utils

0
2017-11-29 12:07