257 lines
9.0 KiB
Plaintext
257 lines
9.0 KiB
Plaintext
Evolution is the integrated mail, calendar and address book suite from
|
|
Ximian, Inc.
|
|
|
|
See http://www.ximian.com/products/evolution for more information.
|
|
|
|
If you are using Evolution, you may wish to subscribe to the Evolution
|
|
users mailing list. If you are interested in contributing to
|
|
development on it, you should certainly subscribe to the Evolution
|
|
Hackers mailing list. Visit
|
|
|
|
http://developer.ximian.com/community/lists.html
|
|
|
|
to subscribe or view archives of the Ximian mailing lists.
|
|
|
|
If you are planning to work on any part of Evolution, please send mail
|
|
to the mailing list first, to avoid duplicated effort (and to make
|
|
sure that you aren't basing your work on interfaces that are expected
|
|
to change).
|
|
|
|
There is also a #evolution IRC channel on irc.gnome.org.
|
|
|
|
Help for Evolution is available in the user manual (select "Help" from
|
|
the menu after running the application), at the Ximian knowledge base
|
|
(http://support.ximian.com), in the Evolution man page (run "man
|
|
evolution" at the command line), and in the --help strings (run
|
|
"evolution --help" at the command line).
|
|
|
|
The rest of this file is dedicated to building Evolution.
|
|
|
|
|
|
DEPENDENCIES
|
|
------------
|
|
|
|
In order to build Evolution you need to have the full set of GNOME 2
|
|
or GNOME 2.2 development libraries installed.
|
|
|
|
GNOME 2 comes with most of the modern distributions, so in most cases
|
|
it should be enough to just install all the devel packages from your
|
|
distribution. If, on the other hand, you want to build GNOME 2 from
|
|
source, please refer to this page:
|
|
|
|
http://gnome.org/start/2.2/notes/rninstallation.html
|
|
|
|
Please make sure you have the most recent versions of the libraries
|
|
installed, since bugs in the libraries can cause bugs in Evolution.
|
|
|
|
Additional dependencies, besides the stock GNOME libraries (the
|
|
dependencies should be compiled in the order they are listed here):
|
|
|
|
* [If compiling against GNOME 2.0] libgnomeprint and
|
|
libgnomeprintui 2.2.0 or later
|
|
|
|
These library come with GNOME 2.2 installations, but not
|
|
with GNOME 2.0 ones. The source code can be downloaded from
|
|
the following locations:
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/libgnomeprint
|
|
ftp://ftp.gnome.org/pub/gnome/sources/libgnomeprintui
|
|
|
|
* [If compiling against GNOME 2.2] libgnomecanvas 2.2.0.2 or
|
|
later
|
|
|
|
If you have a GNOME 2.2 installation, you need to upgrade
|
|
libgnomecanvas to this version (or a later one), since
|
|
Evolution exposes a bug in the older versions of the library
|
|
which causes a crash.
|
|
|
|
If you have a GNOME 2.0 installation, libgnomecanvas 2.0 is
|
|
safe to use.
|
|
|
|
* libsoup 1.99.12 or later
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/libsoup
|
|
|
|
* gtkhtml 3.0.1 or later
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/gtkhtml
|
|
|
|
* gal 1.99.8 or later
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/gal
|
|
|
|
* Berkeley's libdb 3.1.17
|
|
|
|
It is important to use *exactly* this version, and not a
|
|
later one, to compile Evolution. Please check the "Building
|
|
Berkeley DB" section below for more information.
|
|
|
|
ftp://ftp.ximian.com/pub/source/evolution
|
|
|
|
* [Optional] Mozilla NSPR/NSS libraries
|
|
|
|
These are needed if you want to compile Evolution with SSL
|
|
support.
|
|
|
|
http://www.mozilla.org/
|
|
|
|
Many distributions ship these as Mozilla development
|
|
packages.
|
|
|
|
* [Optional] gnome-pilot 2.0 or later
|
|
|
|
This is only necessary if you want to be able to synchronize
|
|
your Palm device with Evolution.
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/gnome-pilot
|
|
ftp://ftp.gnome.org/pub/gnome/sources/gnome-pilot-conduits
|
|
|
|
* [Optional] gnome-spell 1.0.1 or later
|
|
|
|
This is only necessary if you want to have the spell
|
|
checking functionality in Evolution's message composer.
|
|
|
|
ftp://ftp.gnome.org/pub/gnome/sources/gnome-spell
|
|
|
|
|
|
COMPILING BERKELEY DB
|
|
---------------------
|
|
|
|
--- IMPORTANT WARNING ---
|
|
|
|
The on-disk format of DB files has been changing between versions 2, 3
|
|
and 4. Also, because of the libdb API, there is no way to easily
|
|
handle the different formats from within the application. For this
|
|
reason, Evolution has chosen to use one specific version of the
|
|
library (version 3) and stick to it, so that users do not need to
|
|
convert their addressbook files to use them with different version of
|
|
Evolution.
|
|
|
|
That's why Evolution REQUIRES libdb 3.1.17, and NO OTHER VERSION.
|
|
|
|
If you force the check to accept a version different from 3.1.17, your
|
|
binary of Evolution will be using a different format from the chosen
|
|
one; this means that it will not be able to read addressbook databases
|
|
created by other versions of Evolution which were compiled in the
|
|
standard way. Also, we DO NOT GUARRANTEE that Evolution will work
|
|
with different versions of libdb at all, even if it can be trivially
|
|
made to compile against them.
|
|
|
|
SPECIAL NOTE FOR BINARY PACKAGERS:
|
|
|
|
If you are making binary packages for end-users (e.g. if you are a
|
|
distribution vendor), please statically link Evolution to Berkeley
|
|
DB 3.1.17, as mandated by the configure.in check. DO NOT patch
|
|
configure.in to work around the check. Forcing the check to link
|
|
to a different version of the library will only give headaches and
|
|
pain to your users, who will see their addressbook disappear and
|
|
will complain to us (the Evolution team) about losing their data.
|
|
|
|
Besides, libdb will be linked statically, which means that your
|
|
distribution doesn't actually need to ship DB 3.1.17 itself
|
|
separately.
|
|
|
|
The Evolution team will be infinitely grateful for your
|
|
co-operation. Thanks!
|
|
|
|
If you don't have version 3.1.17 installed on your system or Evolution
|
|
doesn't detect it for some reason, here is a way to get Evolution to
|
|
link to it without messing up your system installation.
|
|
|
|
* Install the content of the tarball somewhere *other* than the
|
|
evolution source tree, e.g: NOT evolution/db-3.1.17 .
|
|
|
|
* Compile according to instructions, but installing into some custom
|
|
prefix, for example:
|
|
|
|
../dist/configure --prefix=/home/user/berkeleydb-3.1.17
|
|
|
|
* Configure Evolution specifying that it has to look for the DB
|
|
library there, for example:
|
|
|
|
./configure --prefix=/opt/gnome
|
|
--with-db3-includes=/home/user/berkeleydb-3.1.17/include
|
|
--with-db3-libs=/home/user/berkeleydb-3.1.17/lib
|
|
|
|
Evolution links statically to the library, so after you have compiled
|
|
Evolution you can remove the installed library from your system.
|
|
|
|
|
|
CONFIGURING EVOLUTION
|
|
---------------------
|
|
|
|
First you have to decide whether you want to install Evolution (and
|
|
its dependencies) into the same prefix as the rest of your GNOME
|
|
install, or into a new prefix.
|
|
|
|
Installing everything into the same prefix as the rest of your GNOME
|
|
install will make it much easier to build and run programs, and easier
|
|
to switch between using packages and building it yourself, but it may
|
|
also make it harder to uninstall later. Also, it increases the chance
|
|
that something goes wrong and your GNOME installation gets ruined.
|
|
|
|
If you want to install in a different prefix, you need to do the
|
|
following things:
|
|
|
|
* Set the PKG_CONFIG_PATH environment variable to contain a
|
|
colon-separated list of all the pkg-config directories that
|
|
will be involved in the build. This basically means a list
|
|
of $prefix/lib/pkgconfig directory names, where $prefix is
|
|
the prefix where a library is installed.
|
|
|
|
For example, if you have GNOME installed in /usr and you
|
|
are installing Evolution and its dependencies in
|
|
/opt/evolution, you want to do something like the following
|
|
(assuming you are using Bash):
|
|
|
|
export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/opt/evolution/lib/pkgconfig
|
|
|
|
* Edit the bonobo-activation-config.xml file (which is
|
|
normally found in /etc/bonobo-activation/) to include the
|
|
location where you are installing Evolution.
|
|
|
|
In the example given above (GNOME in /usr, Evolution and
|
|
dependencies in /opt/evolution), your
|
|
bonobo-activation-config.xml will have to look like this:
|
|
|
|
<?xml version="1.0"?>
|
|
<oafconfig>
|
|
<searchpath>
|
|
<item>/usr/lib/bonobo/servers</item>
|
|
<item>/opt/evolution/lib/bonobo/servers</item>
|
|
</searchpath>
|
|
</oafconfig>
|
|
|
|
* Pass an appropriate --prefix parameter to the configure
|
|
scripts of Evolution and its dependencies, eg:
|
|
|
|
./configure --prefix=/opt/evolution
|
|
|
|
More information on how to use the configure script is available in
|
|
the INSTALL file which is part of the Evolution tarball.
|
|
|
|
|
|
OPTIONAL FEATURES
|
|
-----------------
|
|
|
|
Some optional features can be enabled at compilation time by passing
|
|
appropriate flags to the configure script:
|
|
|
|
* GNOME Pilot support.
|
|
|
|
Assuming you have installed gnome-pilot, add the following
|
|
options:
|
|
|
|
--with-pisock=<prefix> --enable-pilot-conduits=yes
|
|
|
|
Where <prefix> is the location where pilot-link (a package
|
|
that gnome-pilot depends on) was installed.
|
|
|
|
* SSL support.
|
|
|
|
Make sure you have Mozilla's NSS nad NSPR libraries
|
|
installed and pass the following flag:
|
|
|
|
--enable-nss
|
|
|