On Tue, Jun 07, 2005 at 09:34:29AM +1000, Stas Bekman wrote:
> William, as you can see from the source src/modules/perl/modperl_util.h
> 
> #if defined(MP_TRACE) && defined(APR_HAS_THREADS)
> #define MP_TRACEf_TID   "/tid 0x%lx"
> #define MP_TRACEv_TID   (unsigned long)apr_os_thread_current()
> 
> The symbol is available if APR_HAS_THREADS is defined. So the apr header 
> containing this definition found by mod_perl says that APR_HAS_THREADS is 
> defined, whereas the library it tries to link against was compiled with 
> threads disabled. Meaning that you have more than one libapr on your 
> system and the wrong library gets linked.

Stas,

Thanks for the references. I tried searching for libaprutil-0.so but
couldn't see any in the path. I used nm on every libaprutil-0.so file I
could find but turned up no instances of a library which had the
apr_os_thread_current function.

I then grepped by mod_perl and httpd source directories for header files
which defined APR_HAS_THREADS. I changed srclib/apr/include/apr.h and
srclib/apr/include/apr.hnw then reconfigured mod_perl but it still
failed.

Once I commented out the defines in modperl_util.h, it appears to have
worked. I'll submit my bug report in a separate email.


Thanks,
William

-- 
Knowmad Services Inc.
http://www.knowmad.com

Reply via email to