summaryrefslogtreecommitdiffstats
path: root/README.windows
blob: 170754db1ac4401bec56386c34fa9d3c2507c76b (plain)
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
In order to build this with mingw/msys for perfparser, use the following configure line:

LDFLAGS=-static-libgcc configure --enable-maintainer-mode --enable-install-elfh --enable-install-featuresh --enable-gnulib \
                                 --without-bzlib --without-lzma --disable-symbol-versioning

That is:
- static-libgcc so that we don't depend on a shared libgcc
- maintainer-mode as we are building from git
- install-elfh and install-featuresh to ship the headers needed to build perfparser
- gnulib to replace missing libc functions
- without-bzlib to avoid extra dependencies
- without-lzma also to avoid dependencies
- disable-symbol-versioning because we cannot support symbol versioning on windows

Check the resulting files with depends.exe. If they depend on any 3rd party dlls, track those down
and check if the libraries are also available as static versions. If so, move the .dll.a files away
to prevent dynamic linking and build again. This is currently about libz and libdl but might happen
with other libraries if elfutils gets more dependencies (hopefully not).

In order to run the tests, you have to add the libasm, libelf, libdw and backends directories to
PATH, as windows doesn't have RPATH.

In order to create the .lib files needed to link the elfutils libraries into MSVC-built binaries,
the "lib.exe" command has to be available from PATH.