gl/
gl.rs

1extern crate rust_graphics_library_loader as loader;
2
3fn main() {
4    #[cfg(target_os = "windows")]
5    let library_name = "opengl32.dll";
6    #[cfg(target_os = "linux")]
7    let library_name = "libGL.so";
8    #[cfg(target_os = "macos")]
9    let library_name = "/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib";
10
11    let linker = loader::Linker::new(library_name).expect(&format!("Can not find {} library.", library_name));
12    let fun_name = "glBindVertexArray";
13    let bind_vertex_array: Option<extern "C" fn(u32)> = linker.get_function(fun_name);
14    if bind_vertex_array.is_some() {
15        println!("{} found", fun_name);
16    } else {
17        println!("{} not found", fun_name);
18    }
19}