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