INSTALLATION
On Debian Lenny
Base install
apt-get install php5-xapian
(you need version 1.x of Xapian here - check xapian.org for older Deb/Ub)
two bugs:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493944
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493941
on dokeos root:
mkdir app/upload/plugins/xapian/searchdb
chmod 777 app/upload/plugins/xapian/searchdb (or equivalent)
Useful xapian development tools
apt-get install xapian-doc xapian-tools
(See delve command)
On Ubuntu 8.10
Chamilo 1.8.8 + XAPIAN in Ubuntu 10.10
1. Activate the search module setting in main/admin/settings.php?category=Search
2. Go to main/admin/specific_fields.php and Specific fields (Those are text fields that will be add in documents, exercises, links in order to index data)
i.e i.e. Author, Body part, Technology, Topic
3. Go to main/admin/settings.php?category=Search and set a Specific field by default
4. Install the Xapian module for PHP5
sudo apt-get install php5-xapian
5. Install the imagemagick modules
sudo apt-get install imagemagick
sudo apt-get install php5-imagick
6. In Chamilo root
mkdir app/upload/plugins/xapian/searchdb
sudo chmod 777 app/upload/plugins/xapian/searchdb
7. Useful Xapian development tools
sudo apt-get install xapian-doc xapian-tools
8. Restart Apache
9. Create a course and 2 *new* Learning paths for testing
10.Edit the LPs created and add/edit the specific fields (i.e. Author, Body part, Technology, Topic)
11.Go to the
On Ubuntu 12.04
Chamilo 1.9.4 + Xapian in Ubuntu 12.04
Since php5-xapian bindings are not available due to license inconsistencies, you have to build the php5-xapian package yourself.
you can follow the instrucions on the xapian.org wiki: http://trac.xapian.org/wiki/FAQ/PHP%20Bindings%20Package
build packages:
sudo apt-get build-dep xapian-bindings
sudo apt-get install php5-dev php5-cli devscripts
apt-get source xapian-bindings
cd xapian-bindings-1.2.*
rm -f debian/control debian/*-stamp
env PHP_VERSIONS=5 debian/rules maint
sed -i 's!include_path=php5$!include_path=$(srcdir)/php5!' php/Makefile.in
echo auto-commit >> debian/source/options
debuild -e PHP_VERSIONS=5 -us -uc
cd ..
If you're using PHP 5.4, then subclassing Xapian classes in PHP doesn't currently work properly and the testsuite will fail with
a segmentation fault. The wrappers work otherwise, so if that's all you need, you can build the package without running the testsuite
by changing the penultimate command above to:
env DEB_BUILD_OPTIONS=nocheck debuild -e PHP_VERSIONS=5 -us -uc
Then you can install the built package:
sudo dpkg -i php5-xapian_*.deb