aboutsummaryrefslogtreecommitdiffstats
path: root/doc/book/building.tex
diff options
context:
space:
mode:
Diffstat (limited to 'doc/book/building.tex')
-rw-r--r--doc/book/building.tex102
1 files changed, 102 insertions, 0 deletions
diff --git a/doc/book/building.tex b/doc/book/building.tex
new file mode 100644
index 00000000..7011373c
--- /dev/null
+++ b/doc/book/building.tex
@@ -0,0 +1,102 @@
+\chapter{Building and Installing VMime\label{chapter_building}}
+
+% ============================================================================
+\section{Introduction}
+
+If no pre-build packages of VMime is available for your system, or if for some
+reason you want to compile it yourself from scratch, this section will guide
+you through the process.
+
+% ============================================================================
+\section{What you need}
+
+To build VMime from the sources, you will need the following:
+
+\begin{itemize}
+\item a working C++ compiler with good STL implementation and also a good
+support for templates (for example, \href{http://gcc.gnu.org/}{GNU GCC}) ;
+\item \href{http://www.scons.org/}{SCons} build system, or the
+autoconf/automake tool chain ;
+\item an usable iconv() implementation (see
+\href{http://www.gnu.org/software/libiconv/}{libiconv of GNU Project}) ;
+\item the \href{http://www.gnu.org/software/gsasl/}{GNU SASL Library} if you
+want SASL\footnote{Simple Authentication and Security Layer} support ;
+\item the \href{http://www.gnu.org/software/gnutls/}{GNU TLS Library} if you
+want SSL and TLS\footnote{Transport Layer Security} support ;
+\end{itemize}
+
+% ============================================================================
+\section{Obtaining source files}
+
+You can download a package containing the source files of the latest release
+of the VMime library from the \href{http://www.vmime.org/}{VMime web site}.
+
+You can also obtain the current development version from the CVS. VMime's CVS
+repository can be checked out from anonymous CVS with the following
+instructions. When prompted for a password for {\em anonymous}, simply press
+Enter key.
+
+\begin{verbatim}
+ cvs -d:pserver:[email protected]:/cvsroot/vmime login
+ cvs -z3 -d:pserver:[email protected]:/cvsroot/vmime co -P vmime
+\end{verbatim}
+
+% ============================================================================
+\section{Compiling and installing}
+
+There are two possibilities for compiling VMime: using SCons building system,
+or using the Autotools.
+
+\vnote{MS Visual C++ users, you can skip this section as a project file
+is provided in the distribution tarball.}
+
+SCons is only used for development purposes, and so it is recommended that you
+use Autotools to build the project as it is a more portable solution, and is
+likely to work out-of-the-box on your computer. Thus, we will not describe
+the process of compiling VMime using SCons here.
+
+\vnote{Windows users, you can use MinGW and MSYS\footnote{See on the MinGW
+website: http://www.mingw.org/} to install a POSIX compatible environment
+on top of Windows. This allow executing configure scripts and Makefiles on
+Windows}.
+
+Before compiling VMime, you should run the {\vcode configure} script to
+detect some parameters specific to your platform. Go into the directory where
+you extracted the tarball and type:
+
+\begin{verbatim}
+ $ ./configure
+\end{verbatim}
+
+This will create a file named {\vcode config.hpp} in the {\vcode vmime/}
+directory, with the parameters detected for your platform. You should modify
+this file only if you know what you are doing!
+
+If you want to enable or disable some features in VMime, you can obtain some
+help by typing {\vcode ./configure --help}. The defaults should be OK though.
+
+Next, you can start the compilation process:
+
+\begin{verbatim}
+ $ make
+\end{verbatim}
+
+Please wait a few minutes will the compilation runs (you should have some time
+to have a coffee right now!). If you get errors during the compilation, be
+sure your system meet the requirements given at the beginning of the chapter.
+You can also try to get a newer version (from the CVS, for example) or to
+get some help on VMime user forums.
+
+If everything has been compiled successfully, you can install the library and
+the development files on your system:
+
+\begin{verbatim}
+ # make install
+\end{verbatim}
+
+\vnote{you must do that with superuser rights (root) if you chose to install
+the library into the default location (ie: /usr/lib and /usr/include).}
+
+Now, you are done! You can jump to the next chapter to know how to use VMime
+in your program...
+