编译apache时出错,“未定义符号:未定义符号:" _ apr_dir_read $ INODE64"... ld:未找到符号" [英] Error when compiling apache, "Undefined symbols:Undefined symbols:"_apr_dir_read$INODE64"......ld: symbol(s) not found"

查看:80
本文介绍了编译apache时出错,“未定义符号:未定义符号:" _ apr_dir_read $ INODE64"... ld:未找到符号"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试编译Apache.我确实下载了最新版本的源代码(2.2.17).这就是我要做的:

I am trying to compile Apache. I did download the latest version of the sourcecode (2.2.17). This is what I do:

> sudo ./configure --prefix=/usr/local/apache2 --with-included-apr --enable-mods-shared=all --enable-module=so

> sudo make

这样做,我得到:

/Users/Niklas/Development/apache/httpd-2.2.17/srclib/apr/libtool --silent --mode=link gcc -g -O2        -o httpd  modules.lo buildmark.o -export-dynamic server/libmain.la modules/http/libmod_http.la modules/mappers/libmod_so.la server/mpm/prefork/libprefork.la os/unix/libos.la  /Users/Niklas/Development/apache/httpd-2.2.17/srclib/pcre/libpcre.la /Users/Niklas/Development/apache/httpd-2.2.17/srclib/apr-util/libaprutil-1.la -lexpat -liconv /Users/Niklas/Development/apache/httpd-2.2.17/srclib/apr/libapr-1.la -lpthread
Undefined symbols:
  "_apr_dir_read$INODE64", referenced from:
      _process_resource_config_nofnmatch in libmain.a(config.o)
      _ap_process_resource_config in libmain.a(config.o)
  "_apr_file_info_get$INODE64", referenced from:
      _ap_pcfg_openfile in libmain.a(util.o)
  "_apr_dir_open$INODE64", referenced from:
      _process_resource_config_nofnmatch in libmain.a(config.o)
      _ap_process_resource_config in libmain.a(config.o)
  "_apr_stat$INODE64", referenced from:
      _ap_process_resource_config in libmain.a(config.o)
      _ap_mpm_set_coredumpdir in libmain.a(mpm_common.o)
      _ap_is_directory in libmain.a(util.o)
      _ap_is_rdirectory in libmain.a(util.o)
      _ap_log_pid in libmain.a(log.o)
      _unixd_pre_config in libos.a(unixd.o)
      _resolve_symlink in libmain.a(request.o)
      _resolve_symlink in libmain.a(request.o)
      _resolve_symlink in libmain.a(request.o)
      _ap_directory_walk in libmain.a(request.o)
      _ap_directory_walk in libmain.a(request.o)
      _ap_directory_walk in libmain.a(request.o)
      _ap_sub_req_lookup_dirent in libmain.a(request.o)
      _ap_sub_req_lookup_dirent in libmain.a(request.o)
      _ap_sub_req_lookup_file in libmain.a(request.o)
      _ap_sub_req_lookup_file in libmain.a(request.o)
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: *** [httpd] Error 1
make: *** [all-recursive] Error 1

我在做什么错了?

我正在使用OSX,但我想那应该没关系吗?

I am using OSX but I guess that shouldn't matter?

我已经为此苦苦挣扎了几天,所以我希望有人能把我指向正确的方向吗?

I have been struggling with this for several days so I hope someone can point me in the rigth direction?

谢谢你!

关于,尼克拉斯

推荐答案

在Mac OS X上构建httpd 2.4.2时,我遇到了类似的问题,首先从此处下载最新的APR

I had a similar problem while building httpd 2.4.2 on Mac OS X, first download the latest APR from here http://apr.apache.org/ then compile and install it somewhere, then reconfigure httpd like this

./configure --with-apr=/Users/youruser/where/you/installed/apr

这篇关于编译apache时出错,“未定义符号:未定义符号:" _ apr_dir_read $ INODE64"... ld:未找到符号"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆