Menu

Tree [4aa430] master /
 History

HTTPS access


File Date Author Commit
 android 2026-06-23 Karl Robillard Karl Robillard [403c1b] Bump version to 0.6.2.
 dist 2025-02-25 Karl Robillard Karl Robillard [922259] Update Doxyfile for Doxygen 1.13.2.
 examples 2026-09-04 Karl Robillard Karl Robillard [4aa430] Get examples/es_profile.c working on Windows.
 mac 2022-07-30 Karl Robillard Karl Robillard [23fa2e] Add GLV_MASK_CMD & GLV_MASK_NUM for Command (Wi...
 win32 2026-09-04 Karl Robillard Karl Robillard [4aa430] Get examples/es_profile.c working on Windows.
 x11 2026-06-23 Karl Robillard Karl Robillard [403c1b] Bump version to 0.6.2.
 ChangeLog 2024-12-22 Karl Robillard Karl Robillard [a8335b] Bump version to 0.5.0.
 Doxyfile 2026-06-11 Karl Robillard Karl Robillard [31bfab] Doxyfile: Update version.
 LICENSE 2024-12-23 Karl Robillard Karl Robillard [2f6f6b] Update documentation and make README a markdown...
 Makefile 2024-12-23 Karl Robillard Karl Robillard [20ab75] Move .spec file to dist directory.
 README.md 2025-08-09 Karl Robillard Karl Robillard [622371] README: Update Shared Libraries chart using Fed...
 dist_files 2008-04-05 wickedsmoke wickedsmoke [893e0e] GLV now builds on openSUSE Build Service.
 glv.c 2026-06-23 Karl Robillard Karl Robillard [403c1b] Bump version to 0.6.2.
 glv.h 2026-06-23 Karl Robillard Karl Robillard [403c1b] Bump version to 0.6.2.

Read Me

GLV Window Library

The GLV library provides a small, cross-platform, C interface for creating a
window or fullscreen display with an OpenGL context. It was written for use
in games and demos as an alternative to larger libraries such as GLUT, SDL,
GLFW, PLIB, etc. There are no thread, joystick, or timer wrappers here.

The library is made available under the MIT License and the implementation
for Linux & Windows is a single source file to facilitate copying directly
into your own projects.

The currently supported systems are Android, Linux (X11), and Windows.
The Linux version is the most complete and gets the most testing.
The Mac version is obsolete as it has not been updated for Cocoa.

The small size of GLV relative to alternatives can be seen on the following
chart:

Linux x86_64 Shared Libraries

Bytes Library Version
36536 GLV 0.6
277712 GLFW 3.3
307296 GLUT 3.12.1
1503144 Allegro 5.2.10
1890144 SDL 2.30.11

Requirements

For Linux install the OpenGL and X11 development packages.

Fedora:

sudo dnf install libglvnd-devel libXcursor-devel libXxf86vm-devel

Ubuntu:

sudo apt install libgl-dev libxcursor-dev libxxf86vm-dev

The X11 version is built without the XFree86 XF86VidMode extension by default,
but this can be enabled in the Makefile by defining USE_XF86VMODE.

Installation

Linux

To use in source form copy these three files into your project:

x11/glv.c x11/glv.h x11/glv_keys.h

To build a shared library run the following commands:

make -C x11
make -C examples -f Makefile.linux
sudo make -C x11 install

Windows

To use in source form copy these three files into your project:

win32/glv.c win32/glv.h win32/glv_keys.h

To build a shared library run the following commands from the command prompt:

cd win32
nmake

Android

Add the android source and header files to your project.