source: trunk/third/evolution/README @ 18142

Revision 18142, 9.1 KB checked in by ghudson, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18141, which included commits to RCS files with non-trunk default branches.
Line 
1Evolution is the integrated mail, calendar and address book
2distributed suite from Ximian, Inc.
3
4See http://www.ximian.com/products/evolution for more information.
5
6If you are using Evolution, you may wish to subscribe to the Evolution
7users mailing list. If you are interested in contributing to
8development on it, you should certainly subscribe to the Evolution
9Hackers mailing list. Visit
10http://developer.ximian.com/community/lists.html to subscribe to
11Ximian mailing lists. If you are planning to work on any part of
12Evolution, please send mail to the mailing list first, to avoid
13duplicated effort (and to make sure that you aren't basing your work
14on interfaces that are expected to change).
15
16There are mailing list archives available at
17http://lists.ximian.com/archives/public/evolution/ and
18http://lists.ximian.com/archives/public/evolution-hackers/
19
20There is also an #evolution IRC channel on irc.gnome.org.
21
22Help for Evolution is available in the user manual (select "Help" from
23the menu after running the application), at the Ximian knowledge base
24(http://support.ximian.com), in the Evolution man page (run "man
25evolution" at the command line), and in the --help strings (run
26"evolution --help" at the command line).
27
28The rest of this file is dedicated to building Evolution.
29
30
31PROBLEMS BUILDING EVOLUTION
32---------------------------
33
34Did you read the "How to build" section below?
35
36If the configure script complains that you don't have a library that
37you know you have installed, it usually means either that you've
38installed things into multiple prefixes (see the bits on GNOME_PATH
39below) or (if you're on Linux) that you installed the "foo" package
40but forgot the "foo-devel" or "foo-dev" packages.
41
42
43HOW TO BUILD EVOLUTION
44----------------------
45
46        *** READ THIS BEFORE YOU START BUILDING ANYTHING! ***
47
48Evolution depends on a large number of unreleased and rapidly-changing
49libraries. Some of these libraries in turn depend on other unreleased
50and rapidly-changing libraries.
51
52Building Evolution is HARD, and it's going to stay hard until all of
53the libraries it depends on stabilize, and there's nothing we can do
54to make it any easier until then.
55
56
57GENERAL PRINCIPLES
58------------------
59
60First you have to decide whether you want to install Evolution (and
61its dependencies) into the same prefix as the rest of your GNOME
62install, or into a new prefix. Installing everything into the same
63prefix as the rest of your GNOME install will make it much easier to
64build and run programs, and easier to switch between using packages
65and building it yourself, but it may also make it harder to uninstall
66later.
67
68If you want to install into the same prefix as the rest of GNOME,
69type:
70
71        gnome-config --prefix
72        gnome-config --sysconfdir
73
74and remember the answers, and pass them to "configure" or "autogen.sh"
75when building the other packages you need. For example:
76
77        ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib
78
79    --localstatedir is needed to make the docs integrate with scrollkeeper
80    and needs to point to the directory containing the scrollkeeper indices
81    which are in: gnome-config --localstatedir
82
83If you build in another prefix instead, you will need to set the
84GNOME_PATH environment variable (and ACLOCAL_FLAGS as well if building
85from CVS) to include the prefix you install into. For example:
86
87        export GNOME_PATH=/usr/local
88        export ACLOCAL_FLAGS="-I /usr/local/share/aclocal"
89
90(Assuming your shell is bash, and you installed into /usr/local.) You
91need to set GNOME_PATH both during compiling AND when you run
92evolution. Remember also that if you're installing into an odd prefix
93such as /evolution, that you also need to make sure to put
94${prefix}/bin in your PATH and ${prefix}/lib in your LD_LIBRARY_PATH.
95
96
97DEPENDENCIES
98------------
99
100The following required libraries are available in GNOME CVS, under the
101given names.  Most (but not all) of them are also available as
102tarballs on ftp.gnome.org or one of the Ximian mirrors listed at
103http://ximian.com/mirrors.html.
104
105If installing from packages, remember that you need both the runtime
106and -devel packages for each library.
107
108 - GNU intltool 0.18
109
110 - scrollkeeper - 0.1.4 or later
111
112 - gnome-xml - 1.8.17 or later in the 1.0 series, but not from the 2.0
113   series (If you get this from GNOME CVS, use the tag "LIB_XML_1_BRANCH".)
114
115 - gnome-print - 0.35 or later
116
117 - gdk-pixbuf - 0.18.0 or later
118
119 - ORBit - 0.5.8 or later  (If you get this from GNOME CVS, use the
120   tag "orbit-stable-0-5".)
121
122 - oaf - 0.6.10 or later (If you get this from GNOME CVS, use the tag
123   "oaf-stable-0-6")
124
125   *** If you are using oaf from CVS, you should use the flag
126   *** "--disable-more-warnings" when you configure, or it may fail to
127   *** build.
128
129 - gnome-vfs - 1.0.5 or later (If you get this from GNOME CVS, use
130   the tag "gnome-vfs-1-0")
131
132   *** If you are using gnome-vfs from CVS, you should use the flag
133   *** "--disable-more-warnings" when configuring, or it may fail to
134   *** build.
135
136 - libglade - 0.14 or later
137
138 - bonobo - 1.0.3 or later
139
140   *** Note that bonobo must be installed with the same --prefix as
141   *** either gnome-libs or evolution for the Makefiles to work
142   *** properly.
143
144 - bonobo-conf - 1.0.16 or later
145
146 - gal (GNOME Application Library) - 0.21 or later
147
148 - gtkhtml - 1.1.5 or later
149
150 - SOUP - 0.7.x
151
152   *** If you are compiling from CVS, grab the soup-0-7 branch.
153
154Other non-GNOME Dependencies:
155
156 - Berkeley's libdb - 3.1.17
157
158   db3 is available from http://www.sleepycat.com. Make sure to get
159   3.1.17, which isn't the latest version.
160
161     --- IMPORTANT WARNING ---
162
163     The on-disk format of DB files has been changing between versions
164     2, 3 and 4.  Also, because of the libdb API, there is no way to
165     easily handle the different formats from within the application.
166     For this reason, Evolution has chosen to use one specific version
167     of the library (version 3) and stick to it, so that users do not
168     need to convert their addressbook files to use them with
169     different version of Evolution.
170
171     That's why Evolution REQUIRES libdb 3.1.17, and NO OTHER VERSION.
172
173     If you force the check to accept a version different from 3.1.17,
174     your binary of Evolution will be using a different format from
175     the chosen one; this means that it will not be able to read
176     addressbook databases created by other versions of Evolution
177     which were compiled in the standard way.  Also, we DO NOT
178     GUARRANTEE that Evolution will work with different versions of
179     libdb at all, even if it can be trivially made to compile against
180     them.
181
182     SPECIAL NOTE FOR BINARY PACKAGERS:
183
184     If you are making binary packages for end-users (e.g. if you are
185     a distribution vendor), please statically link Evolution to
186     Berkeley DB 3.1.17, as mandated by the configure.in check.  DO
187     NOT patch configure.in to work around the check.  Forcing the
188     check to link to a different version of the library will only
189     give headaches and pain to your users, who will see their
190     addressbook disappear and will complain to us (the Evolution
191     team) about losing their data.
192
193     Besides, libdb will be linked statically, which means that your
194     distribution doesn't actually need to ship DB 3.1.17 itself
195     separately.
196
197     The Evolution team will be infinitely grateful for your
198     co-operation. Thanks.
199
200
201COMPILING BERKELEY DB
202---------------------
203
204If you don't have 3.1.17 installed on your system or Evolution doesn't
205detect it for some reason, here is a way to get Evolution to link to
206it without messing up your system installation.
207
208  * Get the Sleepycat tarball from:
209
210      http://www.sleepycat.com/update/snapshot/db-3.1.17.tar.gz
211
212  * Install the content somewhere _other_ than the evolution source tree.
213     e.g: NOT evolution/db-3.1.17
214
215  * Compile according to instructions, but installing into some custom
216    prefix, for example:
217
218      ../dist/configure --prefix=/home/user/berkeleydb-3.1.17
219
220  * Autogen Evolution specifying that it has to look for the DB
221    library there, for example:
222
223      ./autogen.sh --prefix=/opt/gnome
224      --with-db3-includes=/home/user/berkeleydb-3.1.17/include
225      --with-db3-libs=/home/user/berkeleydb-3.1.17/lib
226
227
228COMPILING PALM PILOT SUPPORT
229----------------------------
230
231If you want support for PalmPilot syncing you will also need recent
232versions of:
233
2341) pilot-link
235http://www.pilot-link.org
236
2372) gnome-pilot
238http://www.eskil.org/gnome-pilot/
239
2403) evolution
241In your evolution source directory do ./autogen.sh --prefix=<evo-prefix>
242--with-pisock=<pilot-link-prefix> --enable-pilot-conduits=yes
243make
244make install
245
246
247SSL SUPPORT
248-----------
249
250If you want SSL support (and someday S/MIME), you will also need
251mozilla-nspr and mozilla-nss, which can be found at
252http://www.mozilla.org.
253
254Once you have those libraries (and their respective includes)
255installed, in your evolution source directory do:
256
257./autogen.sh --prefix=<evo-prefix> --with-nspr-includes=<nspr-includes-prefix>
258--with-nspr-libs=<nspr-libs-prefix> --with-nss-includes=<nss-includes-prefix>
259--with-nss-libs=<nss-libs-prefix>
260
261
262NEWSGROUP (NNTP) SUPPORT
263------------------------
264
265Experimental support for NNTP is enabled if you use the --enable-nntp
266configure option, but it's currently unmaintained and highly unstable
267and experimental.
Note: See TracBrowser for help on using the repository browser.