libEtPan!

Viet Hoa DINH


Table of Contents
1. Introduction
Description
Author
Main author
Contributors
2. Installation
Dependencies
Dependencies for users
Dependencies for developers
Existing packages
Compilation
FreeBSD
Mac OS X
Linux
configure
Compile and install

Chapter 1. Introduction

Description

The purpose of this mail library is to provide a portable, efficient middleware for different kinds of mail access (IMAPrev4, POP3, NNTP, mbox, MH, Maildir).

You have two kinds of mailbox access, either using low-level functions with a different interface for each kind of access or using higher-level functions, using a driver to wrap the higher-level API. The API will be the same for each kind of mail access using the higher-level API.


Author

Main author

DINH Viet Hoa


Contributors

  • Wim Delvaux

  • Melvin Hadasht

  • David Woodhouse

  • Juergen Graf

  • Zsolt VARGA


Chapter 2. Installation

Dependencies

Dependencies for users

  • OpenSSL (optional but recommended)

  • Berkeley DB (optional but recommended)

  • POSIX Thread (required)


Dependencies for developers


Existing packages

  • Before you try to compile it, you have to know that packages exist for FreeBSD. (ports/mail/libetpan). This is currently 0.29 for -stable, 0.30 for -current.


Compilation

Generic installation instructions are in the INSTALL file You can pass the following extra options to configure :


FreeBSD

  • make sure libiconv is installed from the ports collection (see pkg_info).

  • issue configure with the following parameter:

    $ ./configure --with-libiconv-prefix=/usr/local
                  


Mac OS X

  • You have to configure using the following command line : CPPFLAGS=-I/sw/include LDFLAGS=-L/sw/lib ./configure

  • in tests/option-parser.c, change the inclusion of getopt.h to gnugetopt/getopt.h

  • in tests/Makefile, add -I/sw/include for the CFLAGS and -L/sw/lib -lgnugetopt for the LDFLAGS.


Linux

  • Warning

    Since libEtPan! is making high usage of mmap() even for writing, when your mailboxes are on NFS filesystem with a Linux server, it is advised to use option no_subtree_check in /etc/exports. This should avoid corruption of data.

    The problem exist in Linux 2.4.22 and earlier versions.

  • On RedHat systems, you have to configure using the following command line : ./configure --with-openssl=/usr/kerberos


configure

You can use the following options :

  • --enable-debug Compiles with debugging turned on

  • --enable-optim Turns on some optimizations flags for gcc

  • --without-openssl Disables OpenSSL (do not look for it)


Compile and install

Download the package and do the following :

$ tar xzvf libetpan-XX.XX.tar.gz      # to decompress the package

$ cd libetpan-XX.XX

$ ./configure --help                 # to get options of configure

$ ./configure                        # you can specify your own options

$ make                               # to compile the package

$ su

# make install

# logout