The Allegro Wiki is migrating to github at https://github.com/liballeg/allegro_wiki/wiki
Every question on this page has really, truly been asked frequently.
- 1 General
- 2 Installation
- 3 Program Compilation
- 4 Programming
- 4.1 Why does Allegro register too many key/mouse presses?
- 4.2 How do I switch between full-screen and windowed modes?
- 4.3 How do I open GIF animations?
- 4.4 Should I use memory or video bitmaps?
- 4.5 How do I prevent the task bar from appearing on top of a full-screen display?
- 4.6 How do I create a multi-threaded application?
- 4.7 How do I use Allegro with a UI engine like Awesomium?
- 5 References
Is Allegro C or C++?
Is Allegro compatible with C++? Is it compatible with C?
Yes and yes. Also, thank you for finding the answer to your question here, in the FAQ. You are off to a good start.
Is Allegro compatible with non-C language X?
Is Allegro thread-safe?
Which branch/version of Allegro should I use?
If you have just started learning C/C++, use whichever branch is easiest to install on your system. If you have C/C++ experience and want to see what the Allegro API has to offer, use the work-in-progress branch. If you formerly programmed in Allegro 4, spend an afternoon bringing yourself up to speed with the Allegro 5 API and use the work-in-progress branch.
For the long answer, see here.
Why do I get undefined symbol errors?
Because you aren't linking correctly to Allegro. Try adding the "-lallegro" switch to your compile command. Add an additional "-lallegro_main" for Mac.
Sacrifice a virgin maiden to the gods of Mt Allegrohorn.
How do I build an executable that runs on any Linux distro?
Link to and distribute monolithic Allegro builds for both 64- and 32-bit platforms.
Why does Allegro register too many key/mouse presses?
How do I switch between full-screen and windowed modes?
How do I open GIF animations?
Should I use memory or video bitmaps?
The answer is not entirely straightforward, but here are some facts:
How do I prevent the task bar from appearing on top of a full-screen display?
How do I create a multi-threaded application?
How do I use Allegro with a UI engine like Awesomium?
Attach a shader as necessary to convert the UI engine's pixel format to one compatible with Allegro. Copy the pixel data to a locked video bitmap. Unlock and draw the bitmap.
- Allegro.cc forum post by pkrcel in Is Allegro C or C++?
- Allegro Github language statistics.
- How to Ask Questions the Smart Way, by Eric Steven Raymond
- Allegro.cc forum post by Thomas Fjellstrom in How thread safe is Allegro?
- Which branch of Allegro should I use?
- Allegro.cc forum post by Trent Gamblin in How to compile a program using allegro
- Allegro.cc forum posts by Elias in Linking allegro statically and by Arthur Kalliokoski and bamccaig in How to compile for a release from linux for all linux platforms?
- Allegro.cc forum post by Gideon Weems in Stored mouse and keyboard after dialog
- Allegro.cc forum post by Thomas Fjellstrom in Fullscreen in Linux Mint
- Achieving Resolution Independence
- Allegro.cc forum post by Thomas Fjellstrom in A threaded loading screen
- Allegro.cc forum post by André Silva in A threaded loading screen
- Allegro.cc forum posts by jmasterx in How To Render Awesomium Into Allegro 5 Buffer and SiegeLord in Allegro5 and Awesomium