I thought it would be helpful to put together for a reference.

APR not found

APR stands for “Apache Portable Runtime” and needed to compile from the source. If you are in the same situation as me then following will rescue you. First, you need to install APR.

Download the latest version of APR using wget

Extract the downloaded file

it will create a new folder “apr-1.6.3”Go inside and compile with configure command

It will take a few seconds and once done you will get a prompt back (ensure no error).

The last step would be to install using make command

Once done, I tried installing Apache and got another error.

APR-util not found

In case you have “APR-util not found” error as well then you got to install the following.

Download the latest APR-util source

Extract the downloaded gz file

Go inside the newly created folder “apr-util-1.6.1” and install using the following commands

Tried installing Apache again and got another error.

pcre-config for libpcre not found

This is what I got. PCRE stands for Perl Compatible Regular Expressions, and this error got an easy solution. You just to install pcre-devel package. Not over yet, got another in next attempt related to OpenSSL.

OpenSSL version is too old

The first thing you have to ensure you have the latest version of OpenSSL which was in my case, so I needed to install the devel package, and it was all right.

xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory

While compiling APR, I got this error. If you are getting this error, then this can be resolved by installing expat-devel package.

configure: error: no acceptable C compiler found in $PATH

C compiler not found is typical for any software build, and you can fix this by installing the compiler.

nghttp2 version is too old

This is specific to when you try to install Apache with HTTP/2. You will get the following error. And, if so, you can fix by installing nghttp2 as below.

Download the latest version of nghttp2 from here

Extract the downloaded file

It will create a new folder, go inside that and run the following

Once done without error, run the Apache source build with HTTP2 again. It should be alright. Finally, I was able to install Apache successfully. If you are interested in learning about Apache HTTP Server Administration, then check out this online course.

Apache HTTP Installation Troubleshooting Guide - 13Apache HTTP Installation Troubleshooting Guide - 35Apache HTTP Installation Troubleshooting Guide - 97Apache HTTP Installation Troubleshooting Guide - 64Apache HTTP Installation Troubleshooting Guide - 98Apache HTTP Installation Troubleshooting Guide - 88Apache HTTP Installation Troubleshooting Guide - 25Apache HTTP Installation Troubleshooting Guide - 44Apache HTTP Installation Troubleshooting Guide - 60Apache HTTP Installation Troubleshooting Guide - 32Apache HTTP Installation Troubleshooting Guide - 35Apache HTTP Installation Troubleshooting Guide - 39Apache HTTP Installation Troubleshooting Guide - 14Apache HTTP Installation Troubleshooting Guide - 69Apache HTTP Installation Troubleshooting Guide - 30Apache HTTP Installation Troubleshooting Guide - 13Apache HTTP Installation Troubleshooting Guide - 91Apache HTTP Installation Troubleshooting Guide - 5Apache HTTP Installation Troubleshooting Guide - 14Apache HTTP Installation Troubleshooting Guide - 47Apache HTTP Installation Troubleshooting Guide - 27Apache HTTP Installation Troubleshooting Guide - 42Apache HTTP Installation Troubleshooting Guide - 50