An error is reported when compiling apr-util in Linux. linuxapr-util
Preface
Apache 2.4 and later versions do not have their own APR Library (Apache Portable Runtime, Apache can be transplanted to the Runtime Library). Therefore, you need to manually download and install the APR library before installing Apache.
The complete APR actually contains three dependent packages: apr, apr-util, and apr-iconv.
Body
After downloading the apr-util package from the official website and decompressing the package and executing make compilation, the following error is returned:
[root@mingc apr-util-1.6.0]# makemake[1]: Entering directory `/usr/local/src/apr-util-1.6.0'/bin/sh /usr/local/apr/build-1/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX -D_REENTRANT -D_GNU_SOURCE -I/usr/local/src/apr-util-1.6.0/include -I/usr/local/src/apr-util-1.6.0/include/private -I/usr/local/apr/include/apr-1 -o xml/apr_xml.lo -c xml/apr_xml.c && touch xml/apr_xml.loxml/apr_xml.c:35:19: error: expat.h: No such file or directoryxml/apr_xml.c:66: error: expected specifier-qualifier-list before ‘XML_Parser’xml/apr_xml.c: In function ‘cleanup_parser’:xml/apr_xml.c:364: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:365: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c: At top level:xml/apr_xml.c:384: error: expected ‘;’, ‘,’ or ‘)’ before ‘*’ tokenxml/apr_xml.c: In function ‘apr_xml_parser_create’:xml/apr_xml.c:401: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:402: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:410: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:411: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:412: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:424: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:424: error: ‘default_handler’ undeclared (first use in this function)xml/apr_xml.c:424: error: (Each undeclared identifier is reported only oncexml/apr_xml.c:424: error: for each function it appears in.)xml/apr_xml.c: In function ‘do_parse’:xml/apr_xml.c:434: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:438: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c:442: error: ‘apr_xml_parser’ has no member named ‘xp_err’xml/apr_xml.c:442: error: ‘apr_xml_parser’ has no member named ‘xp’xml/apr_xml.c: In function ‘apr_xml_parser_geterror’:xml/apr_xml.c:500: error: ‘apr_xml_parser’ has no member named ‘xp_err’xml/apr_xml.c:500: error: ‘apr_xml_parser’ has no member named ‘xp_err’make[1]: *** [xml/apr_xml.lo] Error 1make[1]: Leaving directory `/usr/local/src/apr-util-1.6.0'make: *** [all-recursive] Error 1
Generally, the xml parser is missing. After checking the network information, find the solution. yum installsExpat-develPackage:
[root@mingc apr-util-1.6.0]# yum -y install expat-devel
Reference link: LAMP deployment
Related Links: Functions of Apache to install apr and apr-util