mirror of
https://github.com/raysan5/raylib.git
synced 2025-12-25 10:22:33 -05:00
Updated raylib dependencies (markdown)
@ -2,7 +2,7 @@ While raylib uses libraries that were developed by other people (for specific ta
|
||||
|
||||
The following table lists the raylib dependencies. Most are [single-header, public-domain libraries](https://github.com/nothings/stb).
|
||||
|
||||
**NOTE**: *Last updated on 6th February 2020 for the raylib 3.0 release.*
|
||||
**NOTE**: *Last updated on 14th April 2021 for the raylib 3.7 release.*
|
||||
|
||||
Library | Version | raylib module | Notes
|
||||
--- | :---: | :---: | ---
|
||||
@ -30,18 +30,19 @@ Library | Version | raylib module | Notes
|
||||
|
||||
Note that some of the dependencies listed above are specific to one of the platforms that raylib supports.
|
||||
|
||||
As mentioned above, some of the listed libraries (`stb_image`, `stb_image_write`, `stb_image_resize`, `stb_vorbis`, `jar_mod`, `jar_xm`, `glad` and `mini_al`) are included with raylib as single-file, header-only libraries, and generally only depend on the C standard library for the target platform (msvcrt, libc, bionic et cetera). They are compiled together with raylib (no need to manually link libraries).
|
||||
As mentioned above, some of the listed libraries are included with raylib as single-file, header-only libraries, and only depend on the C standard library for the target platform (msvcrt, libc, bionic, ...). They are compiled together with raylib (no need to manually link libraries).
|
||||
|
||||
Though raylib has no external dependencies, there are some platform-specific system libraries that do need to be linked when compiling [the collection of examples](https://github.com/raysan5/raylib/tree/master/examples). The following table lists the required libraries.
|
||||
|
||||
PLATFORM | external dependencies | Notes
|
||||
PLATFORM | platform dependencies | Notes
|
||||
--- | :---: | ---
|
||||
DESKTOP:Windows | `OpenGL`, `winmm`, `gdi32`, `user32`, `kernel32` | Required for window creation
|
||||
DESKTOP:Linux | `OpenGL`, `X11` | Also requires linkage with `libm`(math), `pthreads`(POSIX threads), `dl`(dynamic loading) and `X11` window system specific libs: `X11`, `Xrandr`, `Xinerama`, `Xi`, `Xxf86vm` and `Xcursor`
|
||||
DESKTOP:FreeBSD | `OpenGL`, `X11` | Also requires linkage with `libm`(math), `pthreads`(POSIX threads), `dl`(dynamic loading) and `X11` window system specific libs: `X11`, `Xrandr`, `Xinerama`, `Xi`, `Xxf86vm` and `Xcursor`
|
||||
DESKTOP:OSX | `OpenGL`, `Cocoa` | Required for window creation
|
||||
ANDROID | `EGL`, `OpenGLES2.0`, `OpenSLES` | Code must be compiled using `Android NDK` libraries. Requires linkage with -`native_app_glue`, `log`, `android`, `atomic`, `libc`, `libm`(math) and `dl`(dynamic loading)
|
||||
RASPBERRY PI | `EGL`, `OpenGLES2.0`, `bcm_host` | Graphics run in native mode using `bcm_host` (no `XWindows` required) and inputs are also natively read (no `XWindows` input events), also requires linkage with `libm`(math), `pthreads`(POSIX threads) and `dl`(dynamic loading).
|
||||
HTML5 (Web) | `WebGL` | Code must be compiled using `emscripten SDK`, dependencies linkage is automatically detected.
|
||||
DESKTOP:macOS | `OpenGL`, `Cocoa` | Required for window creation
|
||||
ANDROID | `EGL`, `OpenGLES2.0`, `OpenSLES` | Code must be compiled using `Android NDK` libraries. Requires linkage with `native_app_glue`, `log`, `android`, `atomic`, `libc`, `libm`(math) and `dl`(dynamic loading)
|
||||
RASPBERRY_PI | `EGL`, `OpenGLES2.0`, `bcm_host` | Graphics run in native mode using `bcm_host` (no `XWindows` required) and inputs are also natively read (no `XWindows` input events), also requires linkage with `libm`(math), `pthreads`(POSIX threads) and `dl`(dynamic loading).
|
||||
RASPBERRY_PI:DRM | `EGL`, `OpenGLES2.0`, `DRM`, `GBM` | Graphics run in native mode using `DRM` (no `XWindows` required) and inputs are also natively read (no `XWindows` input events), also requires linkage with `libm`(math), `pthreads`(POSIX threads) and `dl`(dynamic loading).
|
||||
WEB (HTML5) | `WebGL` | Code must be compiled using `emscripten SDK`, dependencies linkage is automatically detected.
|
||||
|
||||
raylib is [highly modular by design](https://github.com/raysan5/raylib/wiki/raylib-architecture). Many modules can be omitted when they are not being used, and consequently, the libraries used by those modules will also be redundant.
|
||||
Reference in New Issue
Block a user