PostGIS Support Matrix

Versions of PostgreSQL supported by which versions of PostGIS

PostgreSQL VersionPostGIS 1.3PostGIS 1.4PostGIS 1.5PostGIS 2.0 PostGIS 2.1 PostGIS 2.2 Trunk
7.2-7.4Yes (not windows)NoNoNoNoNo
8.0Yes (not windows)NoNoNoNoNo
8.1YesNoNoNoNoNo
8.2YesYesNoNoNoNo
8.3YesYesYesNoNoNo
8.4YesYesYesYes (not recommended)NoNo
9.0NoNoYesYes (not recommended)Yes (not recommended)No
9.1NoNoYesYesYesYes
9.2NoNoYes* (1.5.6+)YesYesYes
9.3NoNoNoNoYesYes
9.4NoNoNoNoYes*Yes

The not recommended note means you can compile and install with that, but you'll be missing some functionality. * Means it currently does or doesn't but may change at release time Note we have dropped support for PostgreSQL 8.3 in PostGIS 2.0. We have dropped support for PostgreSQL 8.4 in PostGIS 2.1. We have dropped support for PostgreSQL 9.0 in PostGIS 2.2. PostgreSQL 9.2 is released. We do not encourage PostgreSQL 9.2 + PostGIS 1.5, however PostGIS 1.5.6+ has patches to work with 9.2. PostgreSQL 9.3 and PostGIS 2.1 are both released. PostgreSQL 9.4 and PostGIS 2.2 are both in development. If you are compiling PostGIS 2.0+ with anything less than 9.1, you will not get CREATE EXTENSION support and will also not get KNN gist distance for geometry.

As a general rule, the PostGIS Project Steering committee tries to maintain support of PostGIS for at least two versions of PostgreSQL. We most often support more than 2 PostgreSQL versions, if requirements do not necessitate bumping up requirement without too much effort. We will rarely support more than 4 PostgreSQL versions on any release.

64-bit Windows version support started in PostGIS 2.0.0 (both 9.0 and 9.1)

Versions of GEOS support for PostGIS

The below chart shows which versions of GEOS work with which versions of PostGIS. The none means that you can get that version to work without GEOS, though its not recommended since a lot of functions will not be installed.

For the not recommended, this means that while you can get PostGIS to work with those versions, you'll be missing out on some PostGIS functions such as ST_Covers, ST_CoversBy and for PostGIS 1.5 the ST_HausdorffDistance and enhancements to ST_Buffer (both speed and functionality). GEOS 3.1 brought cascade union. GEOS 3.2 brought faster buffering and buffering enhancements, plus numerous enhancements with dealing with tolerance issues when unioning. GEOS 3.3 brought ST_ValidReason, ST_MakeValid etc (in the PostGIS 2.0 releases), so these functions will be disabled in PostGIS 2.0 if you are not running GEOS 3.3. GEOS 3.3. also brought stability fixes for union/buffer not back-ported to 3.2. For PostGIS 1.5, although 3.3 does not add any additional functions, it does fix some crashers involving buffering and unioning not present in other minor releases, so suggested to use that if you can.

GEOS 3.4 introduced interruptibility features that allow you to cancel a query while in a GEOS loops. Prior versions of PostGIS/GEOS a query could run (even with statement timeout) until you ran out of memory. This new feature requires both PostGIS 2.1 and GEOS 3.4+. 3.4 also brought  ST_DelaunayTriangles so you won't get that in 2.1 if you don't compile for 3.4+.

Geos VersionPostGIS 1.3PostGIS 1.4PostGIS 1.5PostGIS 2.0PostGIS 2.1PostGIS 2.2
NoneYes (not recommended)NoNo No No No
2.2Yes (not recommended)NoNo No No No
3.0YesYes (not recommended)No No No No
3.1YesYesYes (not recommended) (requires 3.1.1+) No No No
3.2YesYesYesYes (not recommended) No No
3.3YesYesYes (preferred 3.3.3+)Yes (3.3.9+) Yes (not recommended) Yes*
3.4YesYesYes (preferred 3.4.2+)Yes (3.4.2+) Yes Yes
3.5*YesYesYes Yes Yes Yes (recommended)

Versions of GDAL support for PostGIS PostGIS raster functionality (introduced in 2.0) depends on GDAL so to get raster functionality, you'll need to compile with GDAL support and preferrably 1.9 or above. Although you can compile PostGIS 2.0 without raster support, you really should rethink that decision, especially if you are a package maintainer (you'll have a lot of pissed off users if you do :)). For PostgreSQL 9.1 extension support, compiling with raster support is ABSOLUTELY required since the postgis extension includes the raster functionality. * Means it currently does or doesn't but may change at release time. GEOS 3.5 is still in development but will have Voronoi which will be a feature in 2.2 only if you have GEOS 3.5.

GDAL VersionPre - PostGIS 2.0PostGIS 2.0PostGIS 2.1PostGIS 2.2 Trunk
1.7N/AYes (not recommended)NoNo
1.8N/AYes (not recommended)Yes (not recommended)Yes*
1.9N/AYesYesYes
1.10N/AYesYesYes
1.11N/AYesYesYes
2.0devN/ANoNoYes