Re: output debug information of LOGCALL_CTOR/LOGCALL_VOID/...

James Aylett <[email protected]>
Newsgroups gmane.comp.search.xapian.general
Message-ID <[email protected]>
On 9 Jun 2018, at 07:37, 张少华 <[email protected]> wrote:

> Many functions in xapian can be traced when they are called using LOGCALL_CTOR/LOGCALL_VOID/... and I want to output the debug information.

In xapian-core/HACKING in the source code there's a section on this. As well as pass --enable-log to configure, you also need to:

 * set XAPIAN_DEBUG_LOG to be the path to a file that you would like debugging
   output to be appended to, or to the special value ``-`` to indicate that you
   would like debugging output to be sent to stderr.  Unless XAPIAN_DEBUG_LOG
   is set, no debug logging will be performed.  Occurrences of %p in
   XAPIAN_DEBUG_LOG will be replaced with the current process-id.

> Also, I notice -DXAPIAN_REALLY_NO_DEBUG_LOG is added in xapian-core-1.4.5/Makefile, so I deleted this options, but I can not compile successfully then.

That symbol is to stop debug calls being available when compiling things that use Xapian. It's used in common/debuglog.h, which says:

// In places where we include library code in non-library contexts, we can't
// have debug logging enabled, as the support functions aren't visible

which sounds like exactly what you've encountered.

J

-- 
 James Aylett
 devfort.com — spacelog.org — tartarus.org/james/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.