Add missing LIBS
[geos.git] / README.md
blob9405a14e89055b0de79a03d98f796bd741c2d6fb
1 GEOS -- Geometry Engine, Open Source
2 ====================================
4 Project homepage: http://geos.osgeo.org/
6 ## Build status
8 | Branch | Debbie | Travis CI | GitLab CI | AppVeyor | Drone |
9 |:--- |:--- |:--- |:--- |:--- |:--- |
10 | trunk | [![trunk](https://debbie.postgis.net/buildStatus/icon?job=GEOS_Trunk)](https://debbie.postgis.net/view/GEOS/job/GEOS_Trunk/) | [![trunk](https://secure.travis-ci.org/libgeos/libgeos.png)](https://travis-ci.org/libgeos/libgeos) | [![trunk](https://gitlab.com/geos/libgeos/badges/svn-trunk/build.svg)](https://gitlab.com/geos/libgeos/commits/svn-trunk) | [![trunk](https://ci.appveyor.com/api/projects/status/c4b47oa8k50qyqo5/branch/svn-trunk?svg=true)](https://ci.appveyor.com/project/mloskot/libgeos/branch/svn-trunk) | [![master](https://drone.io/github.com/libgeos/libgeos/status.png)](https://drone.io/github.com/libgeos/libgeos/latest) |
12 ## Building, testing, installing
14 ### Unix
16 Using Autotools:
18     ./autogen.sh  # in ${srcdir}, if obtained from SVN or GIT
19     ${srcdir}/configure # in build dir
21 Using CMake:
23     cmake ${srcdir} # in build dir
25 Now, all versions:
27     make
28     make check
29     make install # as root
30     ldconfig # as root
33 ### Microsoft Windows
35 If you use Microsoft Visual C++ (7.1 or later) compiler, you can build
36 GEOS using NMAKE program and provided `makefile.vc` files.
38 If you are building from SVN or GIT checkout, first run: `autogen.bat`
39 Then:
41     nmake /f makefile.vc MSVC_VER=1400
43 where 1400 is version number of Visual C++ compiler, here Visual C++ 8.0
44 from Visual Studio 2005 (supported versions are 1300, 1310, 1400 and 1500).
45 The bootstrap.bat step is required to generate a couple of header files.
47 In order to build debug configuration of GEOS, additional flag `DEBUG=1`
48 is required:
50     nmake /f makefile.vc MSVC_VER=1400 DEBUG=1
53 ## Client applications
55 ### Using the C interface (recommended)
57 To compile programs against the C lib (recommended):
59     CFLAGS += `geos-config --cflags`
60     LDFLAGS += `geos-config --ldflags` -lgeos_c
61     #include <geos_c.h>
63 Example usage:
65     capi/geostest.c contains basic usage examples.
67 ### Using the C++ interface (discouraged)
69 NB: The C++ interface should not be used directly; the GEOS project
70 views it as a bug for another program to use the C++ interface or even
71 to directly link against the C++ library.  The C++ library name will
72 change on every minor release because it is too hard to know if there
73 have been ABI changes.  (The C library uses the C++ interface, but the
74 C library follows normal ABI-change-sensitive versioning, so programs
75 that link only against the C library should work without relinking
76 when GEOS is upgraded.)
78 To compile programs against the C++ lib:
80     CFLAGS += `geos-config --cflags`
81     LDFLAGS += `geos-config --ldflags` -lgeos
82     #include <geos.h>
84 Basic usage examples can be found in `doc/example.cpp`.
87 ### Scripting language bindings
89 Ruby bindings are fully supported. To build, use the `--enable-ruby` option
90 when configuring:
92     ./configure ... --enable-ruby
94 PHP bindings are fully supported. To build, use the `--enable-php` option
95 when configuring:
97     ./configure ... --enable-php
99 Since version 3.0, the Python bindings are unsupported. Recommended options:
101  1. Become or recruit a new maintainer.
102  2. Use [Shapely](http://pypi.python.org/pypi/Shapely) with Python
103     versions 2.4 or greater.
104  3. Simply call functions from libgeos_c via Python ctypes.
106 ## Documentation
108 To build Doxygen documentation:
110     cd doc
111     make doxygen-html