268 lines
9.1 KiB
Plaintext
268 lines
9.1 KiB
Plaintext
Evolution is the integrated mail, calendar and address book
|
|
distributed 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 to
|
|
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 are mailing list archives available at
|
|
http://lists.ximian.com/archives/public/evolution/ and
|
|
http://lists.ximian.com/archives/public/evolution-hackers/
|
|
|
|
There is also an #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.
|
|
|
|
PROBLEMS BUILDING EVOLUTION
|
|
---------------------------
|
|
|
|
Did you read the "How to build" section below?
|
|
|
|
If the configure script complains that you don't have a library that
|
|
you know you have installed, it usually means either that you've
|
|
installed things into multiple prefixes (see the bits on GNOME_PATH
|
|
below) or (if you're on Linux) that you installed the "foo" package
|
|
but forgot the "foo-devel" or "foo-dev" packages.
|
|
|
|
|
|
HOW TO BUILD EVOLUTION
|
|
----------------------
|
|
|
|
*** READ THIS BEFORE YOU START BUILDING ANYTHING! ***
|
|
|
|
Evolution depends on a large number of unreleased and rapidly-changing
|
|
libraries. Some of these libraries in turn depend on other unreleased
|
|
and rapidly-changing libraries.
|
|
|
|
Building Evolution is HARD, and it's going to stay hard until all of
|
|
the libraries it depends on stabilize, and there's nothing we can do
|
|
to make it any easier until then.
|
|
|
|
|
|
GENERAL PRINCIPLES
|
|
------------------
|
|
|
|
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.
|
|
|
|
If you want to install into the same prefix as the rest of GNOME,
|
|
type:
|
|
|
|
gnome-config --prefix
|
|
gnome-config --sysconfdir
|
|
|
|
and remember the answers, and pass them to "configure" or "autogen.sh"
|
|
when building the other packages you need. For example:
|
|
|
|
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib
|
|
|
|
--localstatedir is needed to make the docs integrate with scrollkeeper
|
|
and needs to point to the directory containing the scrollkeeper indices
|
|
which are in: gnome-config --localstatedir
|
|
|
|
If you build in another prefix instead, you will need to set the
|
|
GNOME_PATH environment variable (and ACLOCAL_FLAGS as well if building
|
|
from CVS) to include the prefix you install into. For example:
|
|
|
|
export GNOME_PATH=/usr/local
|
|
export ACLOCAL_FLAGS="-I /usr/local/share/aclocal"
|
|
|
|
(Assuming your shell is bash, and you installed into /usr/local.) You
|
|
need to set GNOME_PATH both during compiling AND when you run
|
|
evolution. Remember also that if you're installing into an odd prefix
|
|
such as /evolution, that you also need to make sure to put
|
|
${prefix}/bin in your PATH and ${prefix}/lib in your LD_LIBRARY_PATH.
|
|
|
|
|
|
DEPENDENCIES
|
|
------------
|
|
|
|
The following required libraries are available in GNOME CVS, under the
|
|
given names. Most (but not all) of them are also available as
|
|
tarballs on ftp.gnome.org or one of the Ximian mirrors listed at
|
|
http://ximian.com/mirrors.html.
|
|
|
|
If installing from packages, remember that you need both the runtime
|
|
and -devel packages for each library.
|
|
|
|
- GNU intltool 0.18
|
|
|
|
- scrollkeeper - 0.1.4 or later
|
|
|
|
- gnome-xml - 1.8.17 or later in the 1.0 series, but not from the 2.0
|
|
series (If you get this from GNOME CVS, use the tag "LIB_XML_1_BRANCH".)
|
|
|
|
|
|
- gnome-print - 0.35 or later
|
|
|
|
- gdk-pixbuf - 0.18.0 or later
|
|
|
|
- ORBit - 0.5.8 or later (If you get this from GNOME CVS, use the
|
|
tag "orbit-stable-0-5".)
|
|
|
|
- oaf - 0.6.10 or later (If you get this from GNOME CVS, use the tag
|
|
"oaf-stable-0-6")
|
|
|
|
*** If you are using oaf from CVS, you should use the flag
|
|
*** "--disable-more-warnings" when you configure, or it may fail to
|
|
*** build.
|
|
|
|
- gnome-vfs - 1.0.5 or later (If you get this from GNOME CVS, use
|
|
the tag "gnome-vfs-1-0")
|
|
|
|
*** If you are using gnome-vfs from CVS, you should use the flag
|
|
*** "--disable-more-warnings" when configuring, or it may fail to
|
|
*** build.
|
|
|
|
- libglade - 0.14 or later
|
|
|
|
- bonobo - 1.0.3 or later
|
|
|
|
*** Note that bonobo must be installed with the same --prefix as
|
|
*** either gnome-libs or evolution for the Makefiles to work
|
|
*** properly.
|
|
|
|
- bonobo-conf - 1.0.16 or later
|
|
|
|
- gal (GNOME Application Library) - 0.21 or later
|
|
|
|
- gtkhtml - 1.1.5 or later
|
|
|
|
- SOUP - 0.7.x
|
|
|
|
*** If you are compiling from CVS, grab the soup-0-7 branch.
|
|
|
|
Other non-GNOME Dependencies:
|
|
|
|
- Berkeley's libdb - 3.1.17
|
|
|
|
db3 is available from http://www.sleepycat.com. Make sure to get
|
|
3.1.17, which isn't the latest version.
|
|
|
|
--- 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.
|
|
|
|
|
|
COMPILING BERKELEY DB
|
|
---------------------
|
|
|
|
If you don't have 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.
|
|
|
|
* Get the Sleepycat tarball from:
|
|
|
|
http://www.sleepycat.com/update/snapshot/db-3.1.17.tar.gz
|
|
|
|
* Install the content 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
|
|
|
|
* Autogen Evolution specifying that it has to look for the DB
|
|
library there, for example:
|
|
|
|
./autogen.sh --prefix=/opt/gnome
|
|
--with-db3-includes=/home/user/berkeleydb-3.1.17/include
|
|
--with-db3-libs=/home/user/berkeleydb-3.1.17/lib
|
|
|
|
|
|
COMPILING PALM PILOT SUPPORT
|
|
----------------------------
|
|
|
|
If you want support for PalmPilot syncing you will also need recent
|
|
versions of:
|
|
|
|
1) pilot-link
|
|
http://www.pilot-link.org
|
|
|
|
2) gnome-pilot
|
|
http://www.eskil.org/gnome-pilot/
|
|
|
|
3) evolution
|
|
In your evolution source directory do ./autogen.sh --prefix=<evo-prefix>
|
|
--with-pisock=<pilot-link-prefix> --enable-pilot-conduits=yes
|
|
make
|
|
make install
|
|
|
|
|
|
SSL SUPPORT
|
|
-----------
|
|
|
|
If you want SSL support (and someday S/MIME), you will also need
|
|
mozilla-nspr and mozilla-nss, which can be found at
|
|
http://www.mozilla.org.
|
|
|
|
Once you have those libraries (and their respective includes)
|
|
installed, in your evolution source directory do:
|
|
|
|
./autogen.sh --prefix=<evo-prefix> --with-nspr-includes=<nspr-includes-prefix>
|
|
--with-nspr-libs=<nspr-libs-prefix> --with-nss-includes=<nss-includes-prefix>
|
|
--with-nss-libs=<nss-libs-prefix>
|
|
|
|
|
|
NEWSGROUP (NNTP) SUPPORT
|
|
------------------------
|
|
|
|
Experimental support for NNTP is enabled if you use the --enable-nntp
|
|
configure option, but it's currently unmaintained and highly unstable
|
|
and experimental.
|