Die OpenGL Extension Wrangler Library (GLEW) ist eine plattformübergreifende Open-Source-Bibliothek zum Laden von C/C++-Erweiterungen. GLEW bietet effiziente Laufzeitmechanismen zur Bestimmung, welche OpenGL-Erweiterungen auf der Zielplattform unterstützt werden. Die OpenGL-Kern- und Erweiterungsfunktionen werden in einer einzigen Header-Datei bereitgestellt. GLEW wurde auf einer Vielzahl von Betriebssystemen getestet, darunter Windows, Linux, Mac OS X, FreeBSD, Irix und Solaris.
http://glew.sourceforge.net/
https://github.com/nigels-com/glew
Die aktuelle Version ist 2.2.0. (Änderungsprotokoll)
Quellen verfügbar als ZIP oder TGZ.
Windows-Binärdateien für 32-Bit und 64-Bit.
Snapshots können neue Funktionen, Fehlerbehebungen oder neue OpenGL-Erweiterungen vor getesteten, offiziellen Veröffentlichungen enthalten.
glew-20220402.tgz GLEW 2.2.0 – mit Fix für glCreateProgressFenceNVX
Es wird dringend empfohlen, aus einem TGZ- oder Zip-Release-Snapshot zu erstellen. Der Codegenerierungs-Workflow ist ein komplexes Gebräu aus GNU Make, Perl und Python, das am besten unter Linux oder Mac funktioniert. Es ist bekannt, dass die Codegenerierung unter Windows mit MSYS2 funktioniert. Für die meisten Endbenutzer von GLEW sind die offiziellen Versionen mit erstklassigem Support die beste Wahl.
GNU Make ist historisch gesehen das primäre Build-System für GLEW. Es enthält Ziele zum Erstellen der Quellen und Header für Wartungszwecke.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel
FreeBSD: # pkg install xorg lang/gcc git cmake gmake bash python perl5
$ make
$ sudo make install
$ make clean
Ziele: all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall
Variablen: SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=
Hinweis: Möglicherweise müssen Sie zuerst make
im Auto- Ordner aufrufen
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
$ sudo apt install mingw-w64
$ make SYSTEM=linux-mingw32
$ make SYSTEM=linux-mingw64
Der cmake-Build wird größtenteils von Mitwirkenden gepflegt. Aufgrund der Vielzahl an Anwendungsfällen erfolgt die Pflege nach Best-Effort- Prinzip. Pull-Anfragen sind willkommen.
CMake 3.16 oder höher ist erforderlich.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git
$ cd build
$ cmake ./cmake
$ make -j4
Ziel | Beschreibung |
---|---|
glänzte | Erstellen Sie die gemeinsam genutzte glew-Bibliothek. |
glew_s | Erstellen Sie die statische Gliw-Bibliothek. |
glewinfo | Erstellen Sie die ausführbare glewinfo (erfordert BUILD_UTILS , um ON zu sein). |
visuelle Info | Erstellen Sie die ausführbare visualinfo (erfordert BUILD_UTILS , um ON zu sein). |
installieren | Installieren Sie alle aktivierten Ziele in CMAKE_INSTALL_PREFIX . |
sauber | Bereinigen Sie Build-Artefakte. |
alle | Erstellen Sie alle aktivierten Ziele (Standardziel). |
Variablen | Beschreibung |
---|---|
BUILD_UTILS | Erstellen Sie die ausführbaren Dateien glewinfo und visualinfo . |
GLEW_REGAL | Bauen Sie im Regal-Modus. |
GLEW_OSMESA | Bauen Sie im Off-Screen-Mesa-Modus. |
BUILD_FRAMEWORK | Als MacOSX Framework erstellen. Es wird empfohlen, CMAKE_INSTALL_PREFIX auf /Library/Frameworks zu setzen. |
Verwenden Sie die bereitgestellte Visual Studio-Projektdatei in build/vc15/
Es werden auch Projekte für vc6, vc10, vc12 und vc14 bereitgestellt
Erhältlich bei Mingw
Anforderungen: Bash, Make, GCC
$ mingw32-make
$ mingw32-make install
$ mingw32-make install.all
Alternative Toolchain: SYSTEM=mingw-win32
Verfügbar ab Msys2 und/oder Mingw-w64
Anforderungen: Bash, Make, GCC
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
$ make
$ make install
$ make install.all
Alternative Toolchain: SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64
glewinfo
ist ein Befehlszeilentool, das zum Überprüfen der Fähigkeiten einer OpenGL-Implementierung und der GLEW-Unterstützung dafür nützlich ist. Bitte fügen Sie glewinfo.txt
ggf. den Fehlerberichten bei.
---------------------------
GLEW Extension Info
---------------------------
GLEW version 2.0.0
Reporting capabilities of pixelformat 3
Running on a Intel(R) HD Graphics 3000 from Intel
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
GL_VERSION_1_1: OK
---------------
GL_VERSION_1_2: OK
---------------
glCopyTexSubImage3D: OK
glDrawRangeElements: OK
glTexImage3D: OK
glTexSubImage3D: OK
...
Um GLEW von Grund auf zu erstellen, um neue Erweiterungen einzuschließen oder die Codegenerierung anzupassen, ist eine Unix- oder Mac-Umgebung erforderlich. Die Erweiterungsdaten werden aus dem Quellverzeichnis der obersten Ebene neu generiert mit:
make extensions
Eine Alternative zum Generieren der GLEW-Quellen von Grund auf besteht darin, einen vorgenerierten (nicht unterstützten) Snapshot herunterzuladen:
https://sourceforge.net/projects/glew/files/glew/snapshots/
GLEW wird derzeit von Nigel Stewart mit Fehlerbehebungen, neuer Unterstützung für OpenGL-Erweiterungen und neuen Releases gepflegt.
GLEW wurde von Milan Ikits und Marcelo Magallon entwickelt. Aaron Lefohn, Joe Kniss und Chris Wyman waren die ersten Benutzer und halfen auch beim Design- und Debugging-Prozess.
Das Akronym GLEW stammt von Aaron Lefohn. Pasi Kärkkäinen hat mehrere Probleme mit GLX und SDL identifiziert und behoben. Nate Robins hat das Dienstprogramm wglinfo
erstellt, an dem Michael Wimmer Änderungen vorgenommen hat.
GLEW freut sich über Beiträge der Gemeinschaft. Typischerweise werden diese über Issues oder Pull Requests in der GitHub-Weboberfläche koordiniert.
Geben Sie beim Einreichen eines Fehlerberichts unbedingt Details zur Plattform und zur Compiler-Toolchain an. Die Ausgabe von glewinfo
kann auch für Diskussionen sehr nützlich sein.
Im Allgemeinen wird GLEW einmal im Jahr veröffentlicht, etwa zur Zeit der Siggraph-Computergrafikkonferenz. Wenn Sie nicht die aktuelle Release-Version von GLEW verwenden, prüfen Sie unbedingt, ob das Problem oder der Fehler dort behoben ist.
GLEW ist ursprünglich aus dem EXTGL-Projekt von Lev Povalahev abgeleitet. Der Quellcode ist unter der Modified BSD License, der Mesa 3-D License (MIT) und der Khronos License (MIT) lizenziert.
Die Skripte zur automatischen Codegenerierung werden unter der GNU GPL veröffentlicht.