Help for Alpine - Compiling
You are in Home > Compiling


Building Alpine is not difficult. There are several advantages about building Aline that you can not get if you only get a precompiled version. For example, you can fix a bug as soon as a patch is available. The price that you must pay in order to receive the advantages of compiling your own source code is usually minimal and we will try to explain how to build Alpine from scratch.

Getting the Source Code

The source code of Alpine is available only for recent versions. The source code of Alpine is not available for versions 2.00 or earlier, as the University of Washington closed its ftp server.

Version 2.01 of Alpine was never officially released by the University of Washington, but its source code is available in this site at

Versions beyond 2.01 can be obtained from

You can also download the most recent bits in the development of Alpine from its git repository at

What else do I Get by Compiling Alpine?

A few other software is included when you build Alpine from source code. Here is a list:

  1. c-client.a, is the compiled version of the c-client libary. This library is located in the "/imap/c-client/c-client.a". You should know that library is used to compile the imap server (imapd) and Aline. We will talk about this library later.
  2. imapd, is the IMAP server. It's source code is in "/imap/imapd/imapd.c"
  3. mailutil, this is a test mail client, you can learn how to use the c-client library just by reading its source code.
  4. libpico.a is the Pico library. Used to compile Pico, Alpine and Pilot. It is located in "./pico/libpico.a".
  5. Pico, this is an easy to use text editor, compiled using the libpico.a library.
  6. Pilot, is a file browser, also compiled with the libpico.a library.
  7. Alpine, the main star. It is compiled with both the libpico and the c-client library among other libraries.
  8. rpdump, a program used to copy configuration files kept in an imap server to a local file.
  9. rpload, a program used to copy your configuration files to an imap server, so that you don't have to create a new pinerc file for every computer where you install Alpine. The same configuration can be read from the IMAP server, no matter where you go.

How Do I build Alpine

Unless you want to build a Windows version, you can build by executing the command
 ./configure ; make 

There are many configuration options that can be passed to the configure script or the make command to build Alpine. A list of all configuration options can be obtained with the command

 ./configure --help 

we will look at the most popular options you might want to configure separately in this document.

In order to build successfully Alpine besides a compiler and autotools, which normally are minimum requirements for building any software, you will need the PAM library to build c-client. OpenSSL is not required, but without it Alpine will not be able to connect securely to a server, which may have serious security implications for you. Current versions of Alpine require that you use a version above 1.0.0c of OpenSSL. Alpine also compiles with LibreSSL.

If you want to connect to a LDAP server, you need to have the ldap library installed in your system. Alpine will build without LDAP support. In order to write to the screen Alpine needs the ncurses library. This is necessary so that Alpine can write in bold, or reverse. The ncurses library is not and optional requirement.

Building Alpine with kerberos support is also optional. In order to build WebAlpine you need to install TCL.

What are the most common parameters that people need to consider before compiling Pine?

There are several, I am not going to talk about the disk space that you need in order to build Aline, this section deals with parameters that affect the end result of this compilation.

You are in Home > Compiling