[Xapian-devel] Compiling PHP Bindings

Olly Betts olly at survex.com
Tue Jun 7 15:51:48 BST 2005


On Tue, Jun 07, 2005 at 10:29:32AM -0400, info at bannershift.com wrote:
> I have problem compiling xapian php bindings.
> 
> I am using debian sarge.
> 
> I have installed php4-dev before compilation.
> I am getting the following errors:
> [...]
>  g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/php4 -I/usr/include/php4/main
> -I/usr/include/php4/Zend -I/usr/include/php4/TSRM -Wall -Wno-unused
> -Wno-uninitialized -g -O2 -I/usr/local/include -MT xapian_wrap.lo -MD -MP -MF
> .deps/xapian_wrap.Tpo -c xapian_wrap.cc  -fPIC -DPIC -o .libs/xapian_wrap.o
> xapian_wrap.cc: In function `void _wrap_PostingIterator_get_description(int,
>    zval*, zval*, int)':
> xapian_wrap.cc:2552: internal compiler error: Segmentation fault

That's most likely a GCC bug.  You shouldn't be able to cause an
"internal compiler error" (or ICE) even if you feed in gibberish.  The
other possibility is bad hardware ("Segmentation fault" is signal number
11):

http://www.bitwizard.nl/sig11/

If it's a hardware fault, it's unlikely to not be totally repeatable
(see that link for more details).

If it's a GCC bug, it's likely to be an optimisation problem (ICEs
usually are in my experience), so you can probably work around it by
turning down the optimisation level.

Trying "make clean", and then add "CXXFLAGS=-O1" to the configure
invocation, i.e.:

./configure --without-python --without-tcl --without-java --without-guile --without-csharp CXXFLAGS=-O1

If it still fails, try "CXXFLAGS=-O0" instead.  If that fails, it's
probably not the optimisers, so it's going to be harder to work
around.

Let me know how you get on.  If this is a reproducible problem with
a Debian release, we're probably going to need to automatically
work around it...

Cheers,
    Olly




More information about the Xapian-devel mailing list