brass and chert compiled / xapian port to Interix
Eric Lindblad
geirfuglaps at yahoo.com
Wed Oct 7 05:58:08 BST 2015
Report by Eric Lindblad 06-10-2015
http://www.ericlindblad.blogspot.com
cf: http://permalink.gmane.org/gmane.comp.search.xapian.general/9885
modifications allowing for brass and chert to compile on SFU Interix 3.5 (modified)
[code change not performance critical]
/xapian-core-1.2.21/backends/brass/brass_check.cc
/xapian-core-1.2.21/backends/chert/chert_check.cc
#include <climits>
+
+#include "str.h"
out << "base" << (char)B.base_letter
<< " blocksize=" << B.block_size / 1024 << "K"
- " items=" << B.item_count
+ << " items=" << str(B.item_count)
it's been suggested that (absent the above) gcc-3.4.2 might be a minimum version to compile the 1.2.x series brass & chert [on certain platforms, notably Interix], and gcc-4.2 for the 1.3.x series (owing to the dependency on C++11 support), but that on the latter probably realistically something newer
some earlier cited code changes from my other posts
cf: http://permalink.gmane.org/gmane.comp.search.xapian.general/9883
/xapian-core-1.2.21/tests/api_backend.cc
- Xapian::Query q(q.OP_PHRASE, qterms, qterms + 2, 5);
+ Xapian::Query q(Xapian::Query::OP_PHRASE, qterms, qterms + 2, 5);
cf: http://permalink.gmane.org/gmane.comp.search.xapian.general/9880
/xapian-core-1.2.21/net/tcpclient.cc
#include <cmath>
#include <cstring>
#ifndef __WIN32__
# include "safenetdb.h"
# include <netinet/in.h>
# include <netinet/tcp.h>
+# include <arpa/inet.h>
# include <sys/socket.h>
#else
# include "safewinsock2.h"
#endif
cf: http://permalink.gmane.org/gmane.comp.search.xapian.general/9862
dependencies libuuid (patched) and zlib --static
current compile script
#!/bin/ksh
CC=/opt/gcc.3.3/bin/gcc
CXX=/opt/gcc.3.3/bin/g++
PKGNAM=xapian-core
VERSION=${VERSION:-1.2.21}
cd tmp/xapian-core-1.2.21/BUILD
env CFLAGS="-D_ALL_SOURCE -D_REENTRANT -I/usr/local/include" \
CXXFLAGS="-D_ALL_SOURCE -D_REENTRANT -I/usr/local/include" \
LDFLAGS="-L/usr/local/lib" \
../configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PKGNAM-$VERSION \
--disable-static
test results (without network access).
If different output (to the below) would be obtained via an SFU 6.0
(Vista Ultimate) or 6.1 (Windows 7 Ultimate) compile I don't know.
$ gmake check
...
./apitest backend none: 57 tests passed, 1 failed.
./apitest backend inmemory: 220 tests passed, 6 failed, 8 skipped.
./apitest backend brass: 296 tests passed, 6 failed, 2 skipped.
./apitest backend chert: 296 tests passed, 6 failed, 2 skipped.
./apitest backend flint: 294 tests passed, 4 failed, 2 skipped.
./apitest backend multi_brass: 153 tests passed, 4 failed, 5 skipped.
./apitest backend multi_chert: 153 tests passed, 4 failed, 5 skipped.
./apitest backend multi_flint: 153 tests passed, 2 failed, 5 skipped.
./apitest backend remoteprog_brass: 145 tests passed, 80 failed, 3 skipped.
./apitest backend remotetcp_brass 201 tests passed, 24 failed, 3 skipped.
./apitest backend remoteprog_chert: 147 tests passed, 78 failed, 3 skipped.
./apitest backend remotetcp_chert: 202 tests passed, 23 failed, 3 skipped.
./apitest backend remoteprog_flint:
./apitest backend remotetcp_flint: 197 passed, 22 failed, 2 skipped.
./apitest total: 2661 tests passed, 333 failed, 44 skipped.
FAIL: apitest
FAIL: internaltest
The random seed is 42
PASS: stemtest
FAIL: queryparsertest
PASS: termgentest
resolverelativepath1 ... ok
PASS: unittest
Running test: adddoc1... FAILED
Running test: bm25weight4... FAILED
Running test: bm25weight5... FAILED
Running test: decvalwtsource1... FAILED
Running test: decvalwtsource2... FAILED
Running test: expandweights4... FAILED
Running test: msetweights1... FAILED
Running test: netstats1... FAILED
Running test: pctcutoff2... FAILED
Running test: rsetmultidb2... FAILED
Running test: scaleweight1... FAILED
Running test: simplequery2... FAILED
Running test: sortrel1... FAILED
Running test: topercent2... FAILED
Running test: topercent4... FAILED
Running test: topercent5... FAILED
Running test: valuestats3... FAILED
Running test: valueweightsource1... FAILED
Running test: valueweightsource2... FAILED
Running test: weight1... FAILED
Running test: wqf1... FAILED
Running test: xor3... FAILED
Running test: serialsedouble1... FAILED
Running test: value_range_serialise1... FAILED
Running test: qp_value_range2... FAILED
Running test: qp_value_range3... FAILED
More information about the Xapian-discuss
mailing list