Important Note: to run CouchDB 0.9, you must have the erlang emulator 5.6 or higher installed (erlang 12.b.3 that comes with Ubuntu 8.10 / Intrepid will work). To see which version of the emulator you are running, issue the following at the command prompt:
One of the requirements for EEE Cooks is full text searching. So, for my chain tonight, I wanted to give couchdb-lucene a try. Since it only works on 0.9 (latest trunk), I need to do a bit of yak shaving.
The install of couchdb-lucene is straight-forward. On my Ubuntu system, all that was needed was:
sudo apt-get install maven2Installing couchdb from subversion incurred a thin slice of dependency hell. After checking it out and bootstrapping:
git clone git://github.com/rnewson/couchdb-lucene.git
svn co http://svn.apache.org/repos/asf/couchdb/trunk couchdbI give configuration a try only to hit this:
checking for icu-config... noOn Ubuntu, this is resolved with
*** The icu-config script could not be found. Make sure it is
*** in your path, and that taglib is properly installed.
*** Or see http://ibm.com/software/globalization/icu/
configure: error: Library requirements (ICU) not met.
cstrom@jaynestown:~/repos/couchdb$ sudo apt-get install libicu-devBut then I get:
checking for curl-config... noMan, I hope this doesn't take too long. Resolve this dependency with:
*** The curl-config script could not be found. Make sure it is
*** in your path, and that curl is properly installed.
*** Or see http://curl.haxx.se/
configure: error: Library requirements (curl) not met.
cstrom@jaynestown:~/repos/couchdb$ sudo apt-get install libcurl-devGreat. Not looking good. Well, I'll pick one. let's say the gnutls one:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libcurl-dev is a virtual package provided by:
You should explicitly select one to install.
cstrom@jaynestown:~/repos/couchdb$ sudo apt-get install libcurl4-gnutls-devHave I reached my yak yet?
./configureNope, have not quite reached the yak.
checking for erl... /usr/bin/erl
checking for erlc... /usr/bin/erlc
checking erl_driver.h usability... no
checking erl_driver.h presence... no
checking for erl_driver.h... no
configure: error: Could not find the `erl_driver.h' header.
Are the Erlang headers installed? Use the `--with-erlang' option to specify the
path to the Erlang include directory.
cstrom@jaynestown:~/repos/couchdb$ sudo apt-get install erlang-devPlease let that be it:
You have configured Apache CouchDB, time to relax.
Run `make && make install' to install.
I am not one for running downloaded, unsigned code as root, so after making the code, run the local development mode to verify that it is functional:
make && ./utils/runNext up: full text indexing.
Apache CouchDB 0.9.0a756286 (LogLevel=info) is starting.
Apache CouchDB has started. Time to relax.