On 15/03/2013 02:27, Peter Karman wrote:
Nick asked on #lucy_dev for testers. Here's my feedback:

on OS X 10.6:

RegexTokenizer is not available because Lucy was compiled without PCRE.
        lucy_RegexTokenizer_init at src/Lucy/Analysis/RegexTokenizer.c line 148
   Bad plan: You planned 68 tests but ran 0.
3/71 batches failed. 0/5029 tests failed.
Result: FAIL

seems like it would be most ideal to detect the lack of PCRE at configure time.

PCRE is already detected during configuration. But we don't skip the tests relying on RegexTokenizer yet when building without PCRE.

How to build with PCRE:

Recent versions of OS X ship with the PCRE library but without the headers. Here's a blog post with a solution:


http://blog.phusion.nl/2012/10/26/fixing-nginx-pcre-compilation-issues-on-os-x-2/

On Debian/Ubuntu you can install the PCRE headers with

    apt-get install libpcre3-dev

On other Linux systems it should be similar.

on CentOS 5:

Running Lucy::Test::Object::TestNum...
   Failed test 8: F64 Set_Value Get_Value
   Failed test 11: Float32_To_F64
   2/58 tests failed.

These failures are probably caused by excess precision. I'm only wondering why these tests pass with the Perl bindings on your system (I assume they do). Can you post your Perl's ccflags by running:

    perl -MConfig -e 'print $Config{ccflags}, "\n"'

Running Lucy::Test::Highlight::TestHighlighter...
Invalid UTF-8 header byte: 00000094
        lucy_StrHelp_decode_utf8_char at ../core/Clownfish/Util/StringHelper.c 
line 216
   Bad plan: You planned 35 tests but ran 22.

This one's strange. My only guess is that it might have to do with strict aliasing which isn't yet disabled in the C bindings. Can you run the tests again after configuring with:

    ./configure -- -fno-strict-aliasing

Nick


Reply via email to