A trend I’ve seen lately is individuals installing newer Linux distributions but using older versions of Asterisk. I thought I would do a quick blog post to explain why this can end up being a problem.
With a newer Linux distribution comes a newer version of the C compiler. Newer versions tend to find code issues in Asterisk, in fact we end up fixing these as soon as we become aware of them and the fixes are then released. This means as long as you’re using the most recent version of Asterisk you’re pretty much in a good spot for having it build and be usable across new Linux distributions. If you try to build an old version of Asterisk, however, you will not have any of these fixes. This can result in Asterisk not building.
The only resolution for this is to either use a more recent version of Asterisk or for you to backport any compiler building fixes to your old version of Asterisk to allow it to build. This is not something that the community will generally do for you. It’s best to avoid using old versions of Asterisk if at all possible, both because of this and also to ensure you are not vulnerable to any security vulnerabilities.