1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
See INSTALL for instructions on configuring, building, and installing this
software. See TODO for the to-do list. See HACKING for information relevant
to anyone wanting to do development work on the bindings.
Supported Platforms
-------------------
Most development work has been done on Linux with GCC, but the bindings should
work on other Unix-like platforms and with other compilers (we've heard success
stories for at least macOS >= 10.3, FreeBSD, NetBSD and OpenBSD).
The Python bindings have been successfully built on Microsoft Windows using
Mingw and MSVC: the PHP bindings have been successfully build on Microsoft
Windows using MSVC. The other bindings may need a few build tweaks to work
- contact us via the mailing lists if you want to get them working.
Supported Languages
-------------------
Bindings for the following languages should be fully functional and ready
for real world use:
C# Tested with Mono C# 3.0.6.0 and 4.2.1.0 recently. Requires
.NET 2 or later (because that's what SWIG supports).
Java Java bindings are generated with SWIG as of Xapian 1.3.0.
The current API should be regarded as experimental - we plan
to review it, possibly make some changes and then declare it
stable early in the 1.4.x release series. The minimum Java
version we aim to support is JDK 1.6 (Java 6). Recently tested
with OpenJDK 1.8.0_77, 1.7.0_03, and 1.6.0_38.
Lua Requires Lua 5.1 or later; tested with 5.1, 5.2, 5.3 and 5.4.
Perl These Perl bindings are generated using SWIG, and are a
replacement for the hand-written Search::Xapian XS bindings.
They are largely compatible with Search::Xapian - see the
"COMPATIBILITY" section in the Xapian module's POD docs for
details. These bindings probably need Perl 5.8.3 or later.
Recently tested with 5.14.2, 5.22.1 and 5.30.0.
PHP Requires PHP >= 8.0. If you still need support for PHP 5.x
or PHP 7.x, use Xapian 1.4.21.
Python 2.x Requires Python 2.7 or later. If you still need support for
Python 2.6, use Xapian 1.4.21.
Python 3.x Requires Python 3.3 or later. If you still need support for
Python 3.2, use Xapian 1.4.21.
Ruby Requires Ruby 2.1 or later (older versions are no longer
supported by the Ruby developers - if you still need support
for older Ruby, Xapian 1.2.x supports Ruby 1.8 and later).
Tcl Requires Tcl 8.5 or later (older versions are no longer
supported by the Tcl developers, so it doesn't make sense for
us to expend effort to support them).
Languages Supported Elsewhere
-----------------------------
Erlang Available from:
https://github.com/arcusfelis/xapian-erlang-bindings/#readme
Guile Available from:
https://guile-xapian.systemreboot.net/
Node.js Available from:
https://github.com/mtibeica/node-xapian#readme
R Available from:
https://github.com/amandaJayanetti/RXapian#readme
If you're interest in getting other languages supported, see the "Adding
support for other programming languages" section in the file HACKING.
|