今天在一台服务器上配置Django环境 ,打算用Apache httpd + mod_python + Django。原来的Apache用的是work MPM,按照Django的文档,mod_python最好和prefork MPM配合,于是打算重新编译一下Apache。编译的时候发现以下的错误
exports
.
c:
1002
: error: previous definition of 'ap_hack_apr_gid_name_get' was here
exports . c: 1641 : error: redefinition of 'ap_hack_apr_gid_get'
exports . c: 1003 : error: previous definition of 'ap_hack_apr_gid_get' was here
exports . c: 1652 : error: redefinition of 'ap_hack_apr_version'
exports . c: 1021 : error: previous definition of 'ap_hack_apr_version' was here
exports . c: 1653 : error: redefinition of 'ap_hack_apr_version_string'
exports . c: 1022 : error: previous definition of 'ap_hack_apr_version_string' was here
make[ 2 ]: *** [exports . lo] Error 1
make[ 2 ]: Leaving directory ` / usr / local / src / httpd- 2.2 . 4 / server'
make[ 1 ]: *** [all-recursive] Error 1
make[ 1 ]: Leaving directory ` / usr / local / src / httpd- 2.2 . 4 / server'
make: *** [all-recursive] Error 1
exports . c: 1641 : error: redefinition of 'ap_hack_apr_gid_get'
exports . c: 1003 : error: previous definition of 'ap_hack_apr_gid_get' was here
exports . c: 1652 : error: redefinition of 'ap_hack_apr_version'
exports . c: 1021 : error: previous definition of 'ap_hack_apr_version' was here
exports . c: 1653 : error: redefinition of 'ap_hack_apr_version_string'
exports . c: 1022 : error: previous definition of 'ap_hack_apr_version_string' was here
make[ 2 ]: *** [exports . lo] Error 1
make[ 2 ]: Leaving directory ` / usr / local / src / httpd- 2.2 . 4 / server'
make[ 1 ]: *** [all-recursive] Error 1
make[ 1 ]: Leaving directory ` / usr / local / src / httpd- 2.2 . 4 / server'
make: *** [all-recursive] Error 1
折腾了好一会儿,感觉可能是前阵子手工装了apr-util和apr的rpm包,可能是导致某些冲突了。于是在执行configure时加上 --with-included-apr,再make,就OK了。