Parent: [f72bf8] (diff)

Child: [1d69c9] (diff)

Download this file

recoll-mingw.txt    195 lines (122 with data), 5.7 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
= Building Recoll on Microsoft Windows MinGW
This document describes building a Recoll distribution, starting from a
pristine Windows machine, using the http://www.mingw.org/[MinGW] port of gcc
and associated tools.
The resulting package only needs Python and 7-zip to be installed on the
target system.
== Installing MinGW and MSYS
Download the installer from http://www.mingw.org/, and run it.
In the following, a number of commands will use a command window with an
MinGW environment. This can be easily created by executing
C:\MinGW\msys\1.0\msys.bat from File Explorer.
Note: you should take care to use the gcc compiler which comes with Qt for
all the following builds. For this, you will want to execute the following
command in the command window:
export PATH=c:/qt/tools/mingw492_32/bin:$PATH
== Tortoise HG
This is needed because there is no source package for recoll or its
dependancies for now, you are going to clone Bitbucket repositories.
Get it from http://tortoisehg.bitbucket.org/download/index.html
Then clone the repositories for
https://medoc@bitbucket.org/medoc/recoll[recoll] to C:/recoll and
https://medoc@bitbucket.org/medoc/recoll-windows-deps[some of the
dependancies] to C:/recolldeps
You can change the target names, but there will be more script editing
later on then (nothing much).
== Qt
Download and install Qt 5.5.x (mingw version) from: http://www.qt.io/download/
Note: it is not possible to build a static webkit, so the installation is
necessarily dynamic, which means that the Qt DLLS will need to be copied
into the installation directory. This is done by the installation-building
script (using `windeployqt`)
== zlib
Download from http://zlib.net/zlib-1.2.8.tar.gz
Then, from an MSYS command window (see above):
cd c:/temp
export PATH=c:/qt/tools/mingw492_32/bin:$PATH
tar xzf path-to-tar-file
cd zlib-1.2.8
make -f win32/Makefile.gcc
== Xapian
Download from:
http://oligarchy.co.uk/xapian/1.2.21/xapian-core-1.2.21.tar.xz
cd c:/recolldeps
tar xf path-to-tar-file
cd xapian-core-1.2.21
- Edit common/safeunistd.h to neutralize the sleep() function definition as
this conflicts with the definition which is part of recent mingw
editions. Replace the "#ifdef __WIN32__" with "#if 0". This is
already fixed in later Xapian versions
Then:
export PATH=c:/qt/tools/mingw492_32/bin:$PATH
CPPFLAGS=-IC:/temp/zlib-1.2.8 LDFLAGS=-Lc:/temp/zlib-1.2.8 ./configure
make
== Recoll
You need to use the source from the repository, there is no release
supporting Windows at the moment.
- If not already done, clone the recoll repository from:
https://medoc@bitbucket.org/medoc/recoll to `C:/recoll`
- Start qtcreator and open c:/recoll/src/windows/qmkrecoll/librecoll.pro At
the bottom of the file, you may need to fix the locations for the xapian
and zlib dlls.
- Build librecoll.pro
- Do the same (adjust locations and build) for:
c:/recoll/src/windows/qmkrecoll/rclstartw.pro
c:/recoll/src/windows/qmkrecoll/recollindex.pro
c:/recoll/src/windows/qmkrecoll/recollq.pro
c:/recoll/src/qtgui/recoll-win.pro
== Helper applications
There are a number of useful files stored in a BitBucket repository, you
will need to clone it on the windows machine (the final script,
mkinstdir.sh, expects C:/recolldeps as a cloned location).
https://medoc@bitbucket.org/medoc/recoll-windows-deps
== 7-zip
7-zip is used for all decompression tasks. Install it from
http://www.7-zip.org/
== Python
All Recoll helper scripts (data extractors) are written in Python, and not
yet compatible with Python3. You need to install and download Python 2.7
from https://www.python.org/downloads/release/python-2710/
== Python modules
Some data formats need library modules not delivered as part of the base
Python installation
=== libxml2/libxslt
The precompiled binary is from :
http://users.skynet.be/sbi/libxml-python/
http://users.skynet.be/sbi/libxml-python/binaries/libxml2-python-2.7.7.win32-py2.7.exe
The useful parts are stored in recoll-windows-deps repo
Slightly newer dlls, which should be compatible, here:
https://www.zlatkovic.com/libxml.en.html
This will be copied into the installation by the mkinstdir.sh script.
=== mutagen
Download and extract mutagen from https://pypi.python.org/pypi/mutagen
Then in the mutagen directory (e.g. C:/temp/mutagen-1.31):
python setup.py build
=== pyexiv2
I did not attempt a build (needs boost-python, scons).
Used an installer from http://tilloy.net/dev/pyexiv2/download.html
The resulting site-packages data is stored in the recoll-windows-deps
directory and copied into the filters directory by the mkinstdir.sh script
=== epub
Download from: http://pypi.python.org/pypi/epub/
Extract, then execute the following in the extracted directory (e.g.:
C:/temp/epub-0.5.2):
python setup.py
The module will be copied by mkinstdir.sh
== Non-Python helpers
== unrtf
I initially built unrtf with VS 2015, and I was too lazy to do it again
with mingw. The project files are in the Windows directory in the official
repository:
hg clone http://hg.savannah.gnu.org/hgweb/unrtf/
== antiword
Use the source from recoll-windows-deps (C:/recolldeps/unrtf)
make -f Makefile.mingw.
== Poppler
Did not try to compile. Used the binaries from
http://blog.alivate.com.au/poppler-windows/
There is a copy in the recoll-windows-deps repository, it will be copied by
the mkinstdir.sh script.
== Building the install directory
Once the builds above are performed, edit the mkinstdir.sh script to adjust
the locations, and use it to build the installation directory