1 | Evolution is the integrated mail, calendar and address book |
---|
2 | distributed suite from Ximian, Inc. |
---|
3 | |
---|
4 | See http://www.ximian.com/products/evolution for more information. |
---|
5 | |
---|
6 | If you are using Evolution, you may wish to subscribe to the Evolution |
---|
7 | users mailing list. If you are interested in contributing to |
---|
8 | development on it, you should certainly subscribe to the Evolution |
---|
9 | Hackers mailing list. Visit |
---|
10 | http://developer.ximian.com/community/lists.html to subscribe to |
---|
11 | Ximian mailing lists. If you are planning to work on any part of |
---|
12 | Evolution, please send mail to the mailing list first, to avoid |
---|
13 | duplicated effort (and to make sure that you aren't basing your work |
---|
14 | on interfaces that are expected to change). |
---|
15 | |
---|
16 | There are mailing list archives available at |
---|
17 | http://lists.ximian.com/archives/public/evolution/ and |
---|
18 | http://lists.ximian.com/archives/public/evolution-hackers/ |
---|
19 | |
---|
20 | There is also an #evolution IRC channel on irc.gnome.org. |
---|
21 | |
---|
22 | Help for Evolution is available in the user manual (select "Help" from |
---|
23 | the menu after running the application), at the Ximian knowledge base |
---|
24 | (http://support.ximian.com), in the Evolution man page (run "man |
---|
25 | evolution" at the command line), and in the --help strings (run |
---|
26 | "evolution --help" at the command line). |
---|
27 | |
---|
28 | The rest of this file is dedicated to building Evolution. |
---|
29 | |
---|
30 | |
---|
31 | PROBLEMS BUILDING EVOLUTION |
---|
32 | --------------------------- |
---|
33 | |
---|
34 | Did you read the "How to build" section below? |
---|
35 | |
---|
36 | If the configure script complains that you don't have a library that |
---|
37 | you know you have installed, it usually means either that you've |
---|
38 | installed things into multiple prefixes (see the bits on GNOME_PATH |
---|
39 | below) or (if you're on Linux) that you installed the "foo" package |
---|
40 | but forgot the "foo-devel" or "foo-dev" packages. |
---|
41 | |
---|
42 | |
---|
43 | HOW TO BUILD EVOLUTION |
---|
44 | ---------------------- |
---|
45 | |
---|
46 | *** READ THIS BEFORE YOU START BUILDING ANYTHING! *** |
---|
47 | |
---|
48 | Evolution depends on a large number of unreleased and rapidly-changing |
---|
49 | libraries. Some of these libraries in turn depend on other unreleased |
---|
50 | and rapidly-changing libraries. |
---|
51 | |
---|
52 | Building Evolution is HARD, and it's going to stay hard until all of |
---|
53 | the libraries it depends on stabilize, and there's nothing we can do |
---|
54 | to make it any easier until then. |
---|
55 | |
---|
56 | |
---|
57 | GENERAL PRINCIPLES |
---|
58 | ------------------ |
---|
59 | |
---|
60 | First you have to decide whether you want to install Evolution (and |
---|
61 | its dependencies) into the same prefix as the rest of your GNOME |
---|
62 | install, or into a new prefix. Installing everything into the same |
---|
63 | prefix as the rest of your GNOME install will make it much easier to |
---|
64 | build and run programs, and easier to switch between using packages |
---|
65 | and building it yourself, but it may also make it harder to uninstall |
---|
66 | later. |
---|
67 | |
---|
68 | If you want to install into the same prefix as the rest of GNOME, |
---|
69 | type: |
---|
70 | |
---|
71 | gnome-config --prefix |
---|
72 | gnome-config --sysconfdir |
---|
73 | |
---|
74 | and remember the answers, and pass them to "configure" or "autogen.sh" |
---|
75 | when 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 | |
---|
83 | If you build in another prefix instead, you will need to set the |
---|
84 | GNOME_PATH environment variable (and ACLOCAL_FLAGS as well if building |
---|
85 | from 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 |
---|
91 | need to set GNOME_PATH both during compiling AND when you run |
---|
92 | evolution. Remember also that if you're installing into an odd prefix |
---|
93 | such 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 | |
---|
97 | DEPENDENCIES |
---|
98 | ------------ |
---|
99 | |
---|
100 | The following required libraries are available in GNOME CVS, under the |
---|
101 | given names. Most (but not all) of them are also available as |
---|
102 | tarballs on ftp.gnome.org or one of the Ximian mirrors listed at |
---|
103 | http://ximian.com/mirrors.html. |
---|
104 | |
---|
105 | If installing from packages, remember that you need both the runtime |
---|
106 | and -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 | |
---|
154 | Other 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 | |
---|
201 | COMPILING BERKELEY DB |
---|
202 | --------------------- |
---|
203 | |
---|
204 | If you don't have 3.1.17 installed on your system or Evolution doesn't |
---|
205 | detect it for some reason, here is a way to get Evolution to link to |
---|
206 | it 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 | |
---|
228 | COMPILING PALM PILOT SUPPORT |
---|
229 | ---------------------------- |
---|
230 | |
---|
231 | If you want support for PalmPilot syncing you will also need recent |
---|
232 | versions of: |
---|
233 | |
---|
234 | 1) pilot-link |
---|
235 | http://www.pilot-link.org |
---|
236 | |
---|
237 | 2) gnome-pilot |
---|
238 | http://www.eskil.org/gnome-pilot/ |
---|
239 | |
---|
240 | 3) evolution |
---|
241 | In your evolution source directory do ./autogen.sh --prefix=<evo-prefix> |
---|
242 | --with-pisock=<pilot-link-prefix> --enable-pilot-conduits=yes |
---|
243 | make |
---|
244 | make install |
---|
245 | |
---|
246 | |
---|
247 | SSL SUPPORT |
---|
248 | ----------- |
---|
249 | |
---|
250 | If you want SSL support (and someday S/MIME), you will also need |
---|
251 | mozilla-nspr and mozilla-nss, which can be found at |
---|
252 | http://www.mozilla.org. |
---|
253 | |
---|
254 | Once you have those libraries (and their respective includes) |
---|
255 | installed, 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 | |
---|
262 | NEWSGROUP (NNTP) SUPPORT |
---|
263 | ------------------------ |
---|
264 | |
---|
265 | Experimental support for NNTP is enabled if you use the --enable-nntp |
---|
266 | configure option, but it's currently unmaintained and highly unstable |
---|
267 | and experimental. |
---|