notmuch/INSTALL
Carl Worth ecfc8df476 INSTALL/README: Clean up the description of how to run the emacs interface.
The INSTALL file still had old information about the "make
install-emacs" command which no longer exists. README was also giving
pointers on how to develop a real interface, (which is not the right
thing since README should be addressed to users, not coders).

So remove the stale and misplaced information, and instead add a new
"Running notmuch" section to the README describing how to run the
notmuch command-line interface and how to run the emacs interface.
2010-06-01 10:51:42 -07:00

78 lines
2.3 KiB
Text

Build and install instructions for Notmuch.
Compilation commands
--------------------
The process for compiling and installing Notmuch is the very standard
sequence of:
./configure
make
sudo make install
In fact, if you don't plan to pass any arguments to the configure
script, then you can skip that step and just start with "make", (which
will call configure for you). See this command:
./configure --help
for detailed documentation of the things you can control at the
configure stage.
Dependencies
------------
Notmuch depends on three libraries: Xapian, GMime 2.4, and Talloc
which are each described below:
Xapian
------
Xapian is the search-engine library underlying Notmuch.
It provides all the real machinery of indexing and searching,
(including the very nice parsing of the query string).
Xapian is available from http://xapian.org
Note: Notmuch will work best with Xapian 1.0.18 (or later) or
Xapian 1.1.4 (or later). Previous versions of Xapian (whether
1.0 or 1.1) had a performance bug that made notmuch very slow
when modifying tags. This would cause distracting pauses when
reading mail while notmuch would wait for Xapian when removing
the "inbox" and "unread" tags from messages in a thread.
GMime 2.4
---------
GMime 2.4 provides decoding of MIME email messages for Notmuch.
Without GMime, Notmuch would not be able to extract and index
the actual text from email message encoded as BASE64, etc.
GMime 2.4 is available from http://spruce.sourceforge.net/gmime/
Talloc
------
Talloc is a memory-pool allocator used by Notmuch.
Talloc is an extremely lightweight and easy-to-use tool for
allocating memory in a hierarchical fashion and then freeing
it with a single call of the top-level handle. Using it has
made development of Notmuch much easier and much less prone to
memory leaks.
Talloc is available from http://talloc.samba.org/
On a modern, package-based operating system you can install all of the
dependencies with a simple simple command line. For example:
For Debian and similar:
sudo apt-get install libxapian-dev libgmime-2.4-dev libtalloc-dev
For Fedora and similar:
sudo yum install xapian-core-devel gmime-devel libtalloc-devel
On other systems, a similar command can be used, but the details of
the package names may be different.