Switch to unified view

a/src/INSTALL b/src/INSTALL
...
...
183
183
184
5.3. Building from source
184
5.3. Building from source
185
185
186
  5.3.1. Prerequisites
186
  5.3.1. Prerequisites
187
187
188
   If you can install any or all of the following through the package manager
189
   for your system, all the better. Especially Qt is a very big piece of
190
   software, but you will most probably be able to find a binary package.
191
192
   You may have to compile Xapian but this is easy.
193
194
   The shopping list:
195
188
   C++ compiler. Up to Recoll version 1.13.04, its absence can manifest
196
     o C++ compiler. Up to Recoll version 1.13.04, its absence can manifest
189
   itself by strange messages about a missing iconv_open.
197
       itself by strange messages about a missing iconv_open.
190
198
191
   Development files for Xapian core.
199
     o Development files for Xapian core.
192
200
193
  Important
201
  Important
194
202
195
   If you are building Xapian for an older CPU (before Pentium 4 or Athlon
203
       If you are building Xapian for an older CPU (before Pentium 4 or
196
   64), you need to add the --disable-sse flag to the configure command. Else
204
       Athlon 64), you need to add the --disable-sse flag to the configure
197
   all Xapian application will crash with an illegal instruction error.
205
       command. Else all Xapian application will crash with an illegal
206
       instruction error.
198
207
199
   Development files for Qt .
208
     o Development files for Qt 4 . Recoll has not been tested with Qt 5 yet.
209
       Recoll 1.15.9 was the last version to support Qt 3. If you do not want
210
       to install or build the Qt Webkit module, Recoll has a configuration
211
       option to disable its use (see further).
200
212
201
   Development files for X11 and zlib.
213
     o Development files for X11 and zlib.
214
215
     o You may also need libiconv. On Linux systems, the iconv interface is
216
       part of libc and you should not need to do anything special.
202
217
203
   Check the Recoll download page for up to date version information.
218
   Check the Recoll download page for up to date version information.
204
205
   You will most probably be able to find a binary package for Qt for your
206
   system. You may have to compile Xapian but this is not difficult (if you
207
   are using FreeBSD, there is a port).
208
209
   You may also need libiconv. Recoll currently uses version 1.9 (this should
210
   not be critical). On Linux systems, the iconv interface is part of libc
211
   and you should not need to do anything special.
212
219
213
  5.3.2. Building
220
  5.3.2. Building
214
221
215
   Recoll has been built on Linux, FreeBSD, Mac OS X, and Solaris, most
222
   Recoll has been built on Linux, FreeBSD, Mac OS X, and Solaris, most
216
   versions after 2005 should be ok, maybe some older ones too (Solaris 8 is
223
   versions after 2005 should be ok, maybe some older ones too (Solaris 8 is
217
   ok). If you build on another system, and need to modify things, I would
224
   ok). If you build on another system, and need to modify things, I would
218
   very much welcome patches.
225
   very much welcome patches.
219
226
220
   Depending on the Qt 3 configuration on your system, you may have to set
221
   the QTDIR and QMAKESPECS variables in your environment:
222
223
     o QTDIR should point to the directory above the one that holds the qt
224
       include files (ie: if qt.h is /usr/local/qt/include/qt.h, QTDIR should
225
       be /usr/local/qt).
226
227
     o QMAKESPECS should be set to the name of one of the Qt mkspecs
228
       sub-directories (ie: linux-g++).
229
230
   On many Linux systems, QTDIR is set by the login scripts, and QMAKESPECS
231
   is not needed because there is a default link in mkspecs/.
232
233
   Neither QTDIR nor QMAKESPECS should be needed with Qt 4, configuration
234
   details are entirely determined by qmake (which is quite often installed
235
   as qmake-qt4).
236
237
   Configure options: 
227
   Configure options: 
238
228
239
     o --without-aspell will disable the code for phonetic matching of search
229
     o --without-aspell will disable the code for phonetic matching of search
240
       terms.
230
       terms.
241
231
242
     o --with-fam or --with-inotify will enable the code for real time
232
     o --with-fam or --with-inotify will enable the code for real time
243
       indexing. Inotify support is enabled by default on recent Linux
233
       indexing. Inotify support is enabled by default on recent Linux
244
       systems.
234
       systems.
245
235
236
     o --with-qtzeitgeist will enable sending Zeitgeist events about the
237
       visited search results, and needs the Qt Zeitgeist module.
238
246
     o --disable-webkit is available from version 1.17 to implement the
239
     o --disable-webkit is available from version 1.17 to implement the
247
       result list with a Qt QTextBrowser instead of a WebKit widget if you
240
       result list with a Qt QTextBrowser instead of a WebKit widget if you
248
       do not or can't depend on the latter.
241
       do not or can't depend on the latter.
249
242
243
     o --disable-idxthreads is available from version 1.19 to suppress
244
       multithreading inside the indexing process. You can also use the
245
       run-time configuration to restrict recollindex to using a single
246
       thread, but the compile-time option may disable a few more unused
247
       locks. This only applies to the use of multithreading for the core
248
       index processing (data input). The Recoll monitor mode always uses at
249
       least two threads of execution.
250
251
     o --disable-python-module will avoid building the Python module.
252
250
     o --enable-xattr will enable code to fetch data from file extended
253
     o --disable-xattr will prevent fetching data from file extended
254
       attributes. Beyond a few standard attributes, fetching extended
251
       attributes. This is only useful is some application stores data in
255
       attributes data can only be useful is some application stores data in
252
       there, and also needs some simple configuration (see comments in the
256
       there, and also needs some simple configuration (see comments in the
253
       fields configuration file).
257
       fields configuration file).
254
258
255
     o --enable-camelcase will enable splitting camelCase words. This is not
259
     o --enable-camelcase will enable splitting camelCase words. This is not
256
       enabled by default as it has the unfortunate side-effect of making
260
       enabled by default as it has the unfortunate side-effect of making
...
...
267
       environment.
271
       environment.
268
272
269
     o --disable-x11mon Disable X11 connection monitoring inside recollindex.
273
     o --disable-x11mon Disable X11 connection monitoring inside recollindex.
270
       Together with --disable-qtgui, this allows building recoll without Qt
274
       Together with --disable-qtgui, this allows building recoll without Qt
271
       and X11.
275
       and X11.
276
277
     o --disable-pic will compile Recoll with position-dependant code. This
278
       is incompatible with building the KIO or the Python or PHP extensions,
279
       but might yield very marginally faster code.
272
280
273
     o Of course the usual autoconf configure options, like --prefix apply.
281
     o Of course the usual autoconf configure options, like --prefix apply.
274
282
275
   Normal procedure:
283
   Normal procedure:
276
284