.\" Automatically generated by Pandoc 2.17.1.1 .\" .\" Define V font for inline verbatim, using C font in formats .\" that render this, and otherwise B font. .ie "\f[CB]x\f[]"x" \{\ . ftr V B . ftr VI BI . ftr VB B . ftr VBI BI .\} .el \{\ . ftr V CR . ftr VI CI . ftr VB CB . ftr VBI CBI .\} .TH "al_install_system" "3alleg5" "" "Allegro reference manual" "" .hy .SH NAME .PP al_install_system - Allegro 5 API .SH SYNOPSIS .IP .nf \f[C] #include bool al_install_system(int version, int (*atexit_ptr)(void (*)(void))) \f[R] .fi .SH DESCRIPTION .PP Initialize the Allegro system. No other Allegro functions can be called before this (with one or two exceptions). .PP The version field should always be set to ALLEGRO_VERSION_INT. .PP If atexit_ptr is non-NULL, and if hasn\[cq]t been done already, al_uninstall_system(3alleg5) will be registered as an atexit function. .PP Returns true if Allegro was successfully initialized by this function call (or already was initialized previously), false if Allegro cannot be used. A common reason for this function to fail is when the version of Allegro you compiled your game against is not compatible with the version of the shared libraries that were found on the system. .PP The version compatibility check works as follows. Let A = xa.ya.za.* be the version of Allegro you compiled with, and B = xb.yb.zb.* be the version of Allegro found in the system shared library. .PP If you defined \f[V]ALLEGRO_UNSTABLE\f[R] before including Allegro headers, then version A is compatible with B only if xa.ya.za = xb.yb.zb. Otherwise, A is compatible with B only if xa.ya = xb.yb. .SH SEE ALSO .PP al_init(3alleg5)