本文介绍了编译Apache时的错误,"未定义的符号:未定义符号:" _apr_dir_read $ INODE64" ...... LD:符号(S)没有发现"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图编译Apache。我没有下载最新版本的源$ C ​​$ C(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

和这样做,我得到的时候:

and when doing that I get:

/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

我在做什么错了?

What am I doing wrong?

我使用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?

感谢您在advnace!

Thank you in advnace!

问候,
尼克拉斯

Regards,Niklas

推荐答案

我有一个类似的问题,而在Mac OS X的httpd建设2.4.2,首先从这里的然后编译并安装的地方,然后重新配置的httpd这样

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:符号(S)没有发现"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-23 16:12