While looking for a cross platform library for game development, I came across both SDL and Allegro. After extensive research on fora, it seems SDL it way more widely used than Allegro is. I got the impression SDL is like 'the standard library' for developing graphical applications.
Now, I was wondering why this is the case. From a purely technical perspective, Allegro supports (almost) the same platforms as SDL. Moreover some functions in Allegro seems more intuitive than the SDL counterparts. On the other hand, the support of SDL for iOS and Android is better.
My question therefore is:
What is the cause of the widespread use of SDL over Allegro? Is it only due to personal preference or are there technical reasons for this?
To put my search into context, I'm looking for a low level library preferably written in C++. My goal is to develop a game engine from the lowest level possible just for the learning experience.