Fixed README
[liblqr.git] / README.Windows
blob96cefb0b29429454deed34e0a8a348168b059519
1 Compiling the library in Windows
2 ================================
4 DISCLAIMER: these notes are not very reliable, as they're
5 based on some very simple tests, without much knowledge of
6 the Windows operating system.
8 1) Using MinGW/MSYS
10 Everything goes as in standard *nix systems (you should
11 probably change the default installation location with the
12 --prefix option in `configure').
13 With the default options, the `configure' sctipt produces a
14 DLL.  If you want to build a static library, you should pass the
15 options --disable-shared and --disable-declspec to
16 `configure', and make sure you define the preprocessor
17 LQR_DISABLE_DECLSPEC whenever you want to compile/link
18 against the static library.
20 2) Using MS Visual C++
22 The library compiles at least under `Microsoft Visual C++
23 2008 Express edition'. You can create an empty DLL project
24 with the default setup (choose Console Application then
25 Advanced Settings -> DLL + Empty Project), then put the
26 `lqr' directory in the project directory and add all of the
27 files within that dir to the project with `Add Exisitng
28 Item'.  Then, you must modify the project properties like
29 this:
31   a) C/C++ -> General -> Additional Include Directories: add
32   the directory `lqr' and its parent, and also the directory
33   where all the necessary glib-2.0 headers are found.
35   b) C/C++ -> Preprocessor -> Preprocessor Definitions: add
36   LQR_EXPORT to the list
38   c) C/C++ -> Advanced -> Compile As: Compile as C Code (it
39   also works otherwise, but this option seems to make sense
40   given that the library is ANSI C)
42   d) Linker -> General -> Version: set version (don't know
43   if this is really needed or has any purpose at all though)
45   e) Linker -> Additional Library Directories: add the
46   directory where glib-2.0.lib is found
48   f) Linker -> Input -> Additional Dependencies: add
49   glib-2.0.lib
51 When you build the project, it should produce the library
52 liblqr-1-0.lib and liblqr-1-0.dll files (assuming your
53 project is called `liblqr-1-0').