天天看點

linux離線安裝apr-util 報錯,Linux 編譯 apr-util 時報錯

前言

Apache 2.4 以後的版本不再自帶 APR 庫(Apache Portable Runtime,Apache 可移植運作庫),是以在安裝 Apache 之前需要手動下載下傳安裝 APR 庫。

完整的 APR 實際上包含了三個依賴包:apr、apr-util 以及 apr-iconv。

正文

在官網下載下傳了 apr-util 包,解壓後執行 make 編譯時,報錯如下:

[[email protected] apr-util-1.6.0]# make

make[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.lo

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

xml/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 ‘*’ token

xml/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 once

xml/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 1

make[1]: Leaving directory `/usr/local/src/apr-util-1.6.0'

make: *** [all-recursive] Error 1

大緻是說缺少了 xml 的解析器。查閱網絡資料後找到了解決方案,yum 安裝一個 expat-devel 包即可:

[[email protected] apr-util-1.6.0]# yum -y install expat-devel

内容來源于網絡如有侵權請私信删除