On 5/5/2010 7:40 AM, jeanherve.qu...@free.fr wrote: > Hi, > > I’m working on windows XP with Cygwin, I have download libapr1-devel-1.3.8-1 > and libaprutil1-devel-1.3.9-1 for use and compile the logger log4cxx from > apache. > Basic functions (basic logger, appender and configuration) works pretty well, > but when I decide to use the method > log4cxx::PropertyConfigurator::configureAndWatch("logger.conf",timeout) > instead of the simple configure( ), I give a undefined reference at linkage. > This method starts a thread, which periodically watches the conf file to be > able to dynamically take change of configuration. > > My first analyze is: the file apr.h define APR_HAS_THREADS to 0 that why the > configureAndWatch method is not present in log4cxx.a > > I don’t understand why the apr library isn’t compile with APR_HAS_THREADS set > to 1? > > Is there a solution to recompile the apr lib for using more functionality of > log4cxx like configureAndWatch and appender ( socketAppender ).
libapr1 has been compiled without thread support for a long time, from before I inherited the package. I tried enabling it the last time I spun a release. It built fine, but some of the tests failed. Most importantly, building subversion against it produced an unusable subversion executable. Apparently, the build process for subversion detects a threaded libapr1 and does some different things, and these completely break subversion on Cygwin. Frankly, I don't have the time or the knowledge to debug the threading in libapr1. You can try to enable it if you want to experiment. As I recall, it requires a pretty simple patch to configure.in, although I don't have it anymore. I'd be happy to take any patches you create to get threading in libapr1 working. -- David Rothenberger ---- daver...@acm.org QOTD: "Wouldn't it be wonderful if real life supported control-Z?" -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple