
= Overview = 

QGIS, like a number of major projects (e.g., KDE 4.0), uses CMake
(http://www.cmake.org) for building from source.

Following a summary of the required dependencies for building:

Required build tools:

- CMake >= 3.0.0
- Flex >= 2.5.6
- Bison >= 2.4
- Python 3
-

Required build dependencies:

- Qt >= 5.9.0
- Proj >= 4.9.3
- GEOS >= 3.4
- Sqlite3 >= 3.0.0
- SpatiaLite >= 4.2.0
- libspatialindex
- GDAL/OGR >= 2.1
- Qwt >= 5.0 & (< 6.1 with internal QwtPolar)
- expat >= 1.95
- QScintilla2
- QCA
- qtkeychain (>= 0.5)
- libzip
-

Optional dependencies:

- for GRASS providers and plugin - GRASS >= 7.0.0.
- for georeferencer - GSL >= 1.8
- for PostGIS support - PostgreSQL >= 8.0.x
- for gps plugin - gpsbabel
- for mapserver export and PyQGIS - Python >= 3.3
- for python support - SIP >= 4.12, PyQt >= 5.3 must match Qt version, Qscintilla2
- for qgis mapserver - FastCGI
- for oracle provider - Oracle OCI library
-

Indirect dependencies:

Some proprietary formats (e.g., ECW and MrSid) supported by GDAL require
proprietary third party libraries.  QGIS doesn't need any of those itself to
build, but will only support those formats if GDAL is built accordingly.  Refer
to http://gdal.org/formats_list.html ff. for instructions how to include
those formats in GDAL.

